我有一个GUI Java应用程序。该应用程序最小化到系统托盘。我在点击托盘图标时添加frame.requestFocusInWindow()
,以便恢复的JFrame
可以吸引用户注意。
代码如下。
trayicon.addMouseListener(new MouseAdapter() {
@Override
public void mouseClicked(MouseEvent e) {
try {
if (e.getButton()==MouseEvent.BUTTON1) frame.setVisible(true);
frame.requestFocusInWindow();
} catch (Exception ex) {
Logger.getLogger(TrayControl.class.getName()).log(Level.SEVERE, null, ex);
}
}
});
如果我在NetBeans IDE中执行应用程序,这非常有效,但是当我构建.jar文件并执行它时,似乎无法使用.requestFocusInWindow()
,因为应用程序窗口不会引起用户注意并在我打开的其他窗户后面恢复。那么这里发生了什么?
答案 0 :(得分:0)
问题解决了。我使用了.setExtendedState()
中JFrame
的{{1}} myoth,如下所示:
MouseListener