嗯,问题很简单。我想知道如何知道 Java Swing 中的 JFrame 何时处于最大化状态。
我尝试过使用这种功能,但它只是告诉我 JFrame 何时被图标化,何时处于正常状态或最大化状态,何时我只想知道何时处于最大化状态等等。
private void formWindowStateChanged(java.awt.event.WindowEvent evt) {
System.out.println(this.getState());
if(this.getState()==1){//this means minimized
System.out.println("Está minimizado");
} else if(this.getState()==0){//this means maximized/normal state
System.out.println("Está maximizado");
}
}
有什么帮助吗?谢谢!
最佳答案
要随时获取 JFrame 的状态,可以使用 frame.getExtendedState()
如果我们将其实现到监听器中,您将拥有:
frame.addWindowStateListener(new WindowStateListener() {
public void windowStateChanged(WindowEvent e) {
System.out.println(frame.getExtendedState());
if(frame.getExtendedState() == Frame.MAXIMIZED_BOTH){
System.out.println("The JFrame is maximised");
}
}
});
在 JFrame 完全最大化状态下,frame.getExtendedState()
函数将返回 Frame.MAXIMIZED_BOTH
。
官方Javadoc:https://docs.oracle.com/javase/7/docs/api/java/awt/Frame.html#getExtendedState()
关于java - 我如何知道 JFrame 何时处于最大化状态 Java Swing,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59438701/