繁体   English   中英

Java:如何将JFrame引入前端?

[英]Java: How can I bring a JFrame to the front?

我目前正在等待一个非常重要的公告,我已经创建了一个简单的应用程序,每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功能根本不起作用。

我想要它做的是,例如:当我浏览时,我想要弹出这个窗口并将焦点设置在这个窗口上。

所以我希望它在所有其他窗口前面,无论我已经打开了多少个窗口。

如果我理解正确,你的代码至少有两个窗口 - 一个是你称之为“表单”的基本程序,另一个是你希望在基本窗口“跳出”的窗口,对吗? 如果是这样,那么不要使用第二个JFrame,而是将“跳出”窗口设置为JDialog或JOptionPane,并使其依赖于第一个窗口。

如果我的假设不正确,请纠正我。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM