如何在一个JFrame运行时暂停另一个JFrame ?



我正在制作一个服务器,里面有一个数据库,但是当我加载主JFrame时,当我连接到数据库阅读用户名&我选择让用户知道程序正在运行,程序在特定时刻正在做什么,并且如果.properties文件不存在(第一次启动),还可以让他创建一个.properties文件。问题是我需要创建2个jframes, 1个显示启动进度,1个只在用户需要创建.properties文件时出现:问题是我必须在第二个运行时暂停第一个,并在第二个关闭执行所有操作时重新启动第一个;我用两种方法实现了它,但它不起作用:首先,我尝试插入一个wait()调用来打开第二个JFrame,并在关闭它时插入一个notify()调用;第二,我尝试使用线程,但问题是,我停止的线程不启动,当它应该…下面是一些代码:

jFrame1.setBounds(0,0,500,500);
    this.setVisible(true);
    jProgressBar2.setValue(0);
    prop = new Properties();
    jTextArea1.setText(jTextArea1.getText()+"Searching file config.properties... n");
    try {
        FileReader fr = new FileReader("config.properties");
        jProgressBar2.setValue(33);
        jLabel3.setText("33");
        jTextArea1.setText(jTextArea1.getText()+"File config.properties found... n");
    } catch (FileNotFoundException ex) {
        jFrame1.setVisible(true);
        jTextArea1.setText(jTextArea1.getText()+"File config.properties not found... n");
    }

我想在输入"catch"部分时暂停;"this"是第一个JFrame,"jFrame1"是第二个。一些提示和技巧吗?

解决方案:不要使用多个jframe。让作为模态对话框的窗口不是第二个JFrame,而是一个真正的模态JDialog。

我们应该把这个问题作为一个重复的问题结束,因为这个问题一遍又一遍地被问。

最新更新