Заставка в addActionListener - PullRequest
       7

Заставка в addActionListener

1 голос
/ 29 ноября 2011

Мне нужно показать заставку при нажатии кнопки.Когда я нажимаю на кнопку, всплеск должен быть виден, я делаю некоторый процесс, который выполняется в фоновом режиме.После завершения фонового процесса всплеск должен исчезнуть.Я использовал следующий код, но всплеск не виден.Когда я использую тот же код в основном классе, он работает.

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();
        }
            });

1 Ответ

1 голос
/ 29 ноября 2011

Не выполняйте длительные задачи на EDT. Используйте SwingWorker и см. Параллельность в Swing для получения более подробной информации.

...