java - addActionListener 中的启动屏幕

标签 java swing jbutton splash-screen actionlistener

我需要在单击按钮时显示启动屏幕。当我单击按钮时,启动画面必须可见,我会执行一些在后台运行的进程。后台进程完成后,飞溅必须消失。我使用了以下代码,但飞溅不可见。当我在主类中使用相同的代码时,它可以工作。

btnClickToMove.addActionListener(new ActionListener() {

                public void actionPerformed(ActionEvent e) {
    JWindow window = new JWindow();
                    window.getContentPane().add(
                                    new JLabel("Loading JFrame...", SwingConstants.CENTER));
                    window.setBounds(200, 200, 200, 100);
                    window.setVisible(true);
                    try {
                            Thread.sleep(5000);
                    } catch (InterruptedException e) {
                            e.printStackTrace();
                    }

    // my process which runs on background.......

      window.setVisible(false);
      window.dispose();
        }
            });

最佳答案

不要在 EDT 上执行长时间运行的任务。使用SwingWorker ,并参见Concurrency in Swing了解更多详情。

关于java - addActionListener 中的启动屏幕,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8311988/

相关文章:

java - 期待关闭,在第 1 行附近发现 'WHEN' 异常?如何在 HIbernate 中摆脱它

java - 为什么 “gradle dependencies”不显示所有依赖项?

java - 方法中的 Scanner 对象和 NoSuchElementException

java - 更新 JScrollPane 时出现问题

java - 如何在 JTree 上显示动态更新?/如何刷新或重新加载 JTree?

java - 如何防止 JButton 改变大小?

java - 通过并发请求多次运行 JAR

javascript - Jquery 适用于一个按钮,但不适用于另一个相同的按钮?

java - 按钮 Action 监听器错误

java - 使用循环创建 java jbutton