我正在java中创建一个通知系统,我希望程序显示在系统托盘中,而不是在任务栏上,我试过:
notification.setExtendedState(JFrame.ICONIFIED);
这不仅不起作用,而且还远远落后于我的电脑 现行守则:
public static void notify(String line1, String line2, String imagepath, int style){
GraphicsDevice gd = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
int width = gd.getDisplayMode().getWidth();
int swidth = width - 320;
JFrame notification = new JFrame();
JPanel main = new JPanel(new FlowLayout(FlowLayout.RIGHT));
main.setLayout( new GridLayout( 2 , 1 ) );
JLabel notifyline1 = new JLabel();
notifyline1.setText(line1);
notifyline1.setFont(new Font("Minecraft",1 , 16));
notifyline1.setForeground(new Color(242, 238, 17));
main.add(notifyline1);
JLabel notifyline2 = new JLabel();
notifyline2.setText(line2);
notifyline1.setFont(new Font("Minecraft",1 , 12));
notifyline1.setForeground(Color.black);
main.add(notifyline1);
notification.add(main);
notification.setExtendedState(JFrame.ICONIFIED);
notification.setSize(new Dimension(320,64));
notification.setLocation(swidth, 0);
notification.setUndecorated(true);
notification.setVisible(true);
}
另外,一石二鸟 有没有办法给jlabel上色,试过
label1.setForegroundColor(new Color(100, 100, 100));