Показать FrameView после HIDE_ON_CLOSE - PullRequest
3 голосов
/ 16 ноября 2011

У меня проблема с моим Java-приложением, я установил необходимое значение для уменьшения на иконку в трее и установил:

app.getMainFrame().setDefaultCloseOperation(HIDE_ON_CLOSE);

Поэтому, когда я закрываю свое приложение на панели задач, оно будет закрыто, но приложение продолжит работать, и на панели задач будет виден значок.

Проблема: Как я могу восстановить приложение с панели задач?

Я пытался:

app.show(app.getMainView().getFrame());
app.getMainView().getFrame().setVisible(true);
app.getMainView().getFrame()setVisible(true);

но ни один из них не работал.

1 Ответ

3 голосов
/ 16 ноября 2011

Вам нужно восстановить его в состояние по умолчанию:

app.getMainFrame().setVisible(true);
app.getMainFrame().setState(Frame.NORMAL);

Редактировать: проверено это с JFrame, и оно отлично работает.См .:

JFrame f = new JFrame("Test");
f.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
while (true) {
    f.setVisible(true);
    f.setState(JFrame.NORMAL);
    try {
        Thread.sleep(100);
    } catch (InterruptedException e) {
        e.printStackTrace();
    }
}

Это просто показывает JFrame, как только он скрыт.

...