我目前正在等待一个非常重要的公告,我已经创建了一个简单的应用程序,每30分钟检查一次是否发布公告
发布公告时,我想要一个窗口弹出并通知我。该窗口只是一个简单的JFrame,其中包含一些文本。
我有一个名为Announcement的课程。
在这个类中,我为名为Form的框架定义了另一个类, 所以我有这样的事情:
class Form{
public Form(){
//create frame and show it
JFrame frame = new JFrame("anouncement");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = frame.getContentPane();
frame.setSize(420, 100);
JLabel l1 = new JLabel("The announcement was just made");
l1.setFont(new Font("Courier New", Font.ITALIC, 20));
c.add(l1);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.setVisible(true);
frame.toFront(); //this thing doesn't work
}
}
public class Announcement{
public static void main(String[] args){
//do the checking every 30 minutes part
}
}
toFront功能根本不起作用。
我想要它做的是,例如:当我浏览时,我想要弹出这个窗口并将焦点设置在这个窗口上。
所以我希望它在所有其他窗口前面,无论我已经打开多少个窗口。
答案 0 :(得分:2)
如果我理解正确,你的代码至少有两个窗口 - 一个是你称之为“表单”的基本程序,另一个是你希望在基本窗口“跳出”的窗口,对吗?如果是这样,那么不要使用第二个JFrame,而是将“跳出”窗口设为JDialog或JOptionPane,并使其依赖于第一个窗口。
如果我的假设不正确,请纠正我。