java - 我如何知道 JFrame 何时处于最大化状态 Java Swing

标签 java swing netbeans jframe

嗯,问题很简单。我想知道如何知道 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/

相关文章:

Java UI,尝试在单击按钮时转到下一页

JavaFX 预加载器和 Netbeans

java - RegEx 从字符串中提取第二个 URL

java - 当我尝试在 cmd 窗口中使用 "java"命令运行我的代码时,出现错误

java - 在单个 JOptionPane 中显示多个 System.out.print?

java - java程序中闪烁的gif

java - NetBeans - 如何从外部库导入类

glassfish 服务器 3.1 的 Netbeans 错误?

java - 两个数组之间的差异

Java:URLConnection 的合理超时时间