Windows 7 «фантомное» окно - JDialog - PullRequest
0 голосов
/ 12 октября 2018

У меня странная проблема с простейшим Java-приложением (протестировано с JDK6, JDK 8), работающим в Windows 7 (32-разрядная версия, пакет обновления 1):

public static void main(String[] args) {
  final JFrame frame = new JFrame();        
  Button b = new Button("show popup");
  b.addActionListener(new ActionListener() {
    @Override
    public void actionPerformed(ActionEvent e) {            
      JDialog  d = new JDialog(frame);
      d.setDefaultCloseOperation(WindowConstants.HIDE_ON_CLOSE); // default
      // d.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
      d.add(new JTextField("Hello everybody. I'm phantom dialog!!!"));
      d.setBounds(20, 20, 300, 100);
      d.setVisible(true);
    }
  });       
  frame.add(b);
  frame.setBounds(30, 30, 600, 400);
  frame.setVisible(true);
}

Сценарий:

  1. запустите приложение,
  2. нажмите кнопку (JDialog открыт),
  3. Закройте JDialog, но продолжайте работу приложения,
  4. См.предварительный просмотр приложения на панели задач (см. скриншот):

https://i.stack.imgur.com/Dk9h4.png

Обратите внимание, что Windows отображает JDialog, даже если он был закрыт на шаге 3Я знаю, что опция HIDE_ON_CLOSE означает, что setVisible (false) вызывается, когда JDialog закрыт, но вопрос таков:Почему в предварительном просмотре панели задач Windows отображает JDialog, который был закрыт?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...