当点击托盘图标时,我需要恢复一个隐藏窗口。实际上,我已经找到了部分解决方案:
tray_icon.addMouseListener(new MouseListener() {
@Override
public void mouseClicked( MouseEvent e ) {
//Gui.this refers to my frame
Gui.this.setVisible(true);
}
});这将显示框架,如果它是在后面的另一个窗口。它会把框架放在上面。但是如果我把框架最小化,它就不会显示窗口。然而,有趣的是,它稍微突出了任务栏选项卡:

任务栏闪烁很好,但还不够:
请注意,我计划允许“最小化到托盘”功能。这意味着我甚至会完全隐藏窗口(如果Java允许的话)。仍然有可能证明这一点。
发布于 2015-03-07 22:17:23
除了setVisible之外,还有其他需要设置的内容:
Gui.this.setState(Frame.NORMAL);当最小化时,帧的状态是Frame.ICONIFIED。
这是恢复隐藏帧的完整回调:
tray_icon.addMouseListener(new MouseListener() {
@Override
public void mouseClicked( MouseEvent e ) {
Gui.this.setVisible(true);
Gui.this.setState (Frame.NORMAL);
}
}这就是我用来隐藏窗口和任务栏面板的东西(最小化到托盘):
this.addWindowListener(new WindowAdapter()
{
@Override
public void windowIconified(WindowEvent event) {
//Hides it from screen
Gui.this.setState(Frame.ICONIFIED);
//Hides it from taskbar and screen
Gui.this.setVisible(false);
}
});https://stackoverflow.com/questions/28920423
复制相似问题