如果 JFrame 窗口最小化,有什么方法可以使其恢复焦点吗?
我试图让它点击某个点,然后恢复它。
while (isRunning) {
start = System.currentTimeMillis();
frame.setState(Frame.ICONIFIED);
robot.mouseMove(clickX, clickY);
robot.mousePress(InputEvent.BUTTON1_MASK);
frame.setState(Frame.NORMAL);
Thread.sleep(clickMs - (System.currentTimeMillis() - start));
}
如果你想把它从原来的状态中恢复过来iconified
,你可以将其状态设置为normal
:
JFrame frame = new JFrame(...);
// Show the frame
frame.setVisible(true);
// Sleep for 5 seconds, then minimize
Thread.sleep(5000);
frame.setState(java.awt.Frame.ICONIFIED);
// Sleep for 5 seconds, then restore
Thread.sleep(5000);
frame.setState(java.awt.Frame.NORMAL);
示例来自here.
还有WindowEvents每当状态改变时就会触发WindowListener处理这些触发器的接口。在这种情况下,您可以使用:
public class YourClass implements WindowListener {
...
public void windowDeiconified(WindowEvent e) {
// Do something when the window is restored
}
}
如果您想检查另一个程序的状态更改,则没有“纯 Java”解决方案,而只需要获取窗口的ID
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)