java - JFrame问题

标签 java swing jframe windowlistener

最小化 JFrame 时调用什么代码?它是否连接到一个听众?我只想知道当框架最小化时内部发生了什么。

编辑: 我实际上是在寻找框架最小化时调用的代码。例如,实际 windowListener 的代码。我一直在搜索 JFrameFrameWindow 搜索 windowIconified 但无法找到实际代码.

原因是,当我的程序运行时,其中一个面板有一个小缺陷,但是当我最小化和最大化 JFrame 时,问题就消失了。我想看看发生了什么,这样我就可以将正在发生的一切应用到我的面板上,这样它就能正确绘制。

最佳答案

您可以使用 WindowListener 收听

例如

import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import javax.swing.JFrame;

public class WinStateListener implements WindowListener {

    static JFrame window = new JFrame("Window State Listener");

    public WinStateListener() {
        window.setBounds(30, 30, 300, 300);
        window.addWindowListener(this);
        window.setVisible(true);
    }

    public static void main(String[] args) {
        WinStateListener winStateListener = new WinStateListener();
    }

    public void windowClosing(WindowEvent e) {
        System.out.println("Closing");
        window.dispose();
        System.exit(0);
    }

    public void windowOpened(WindowEvent e) {
        System.out.println("Opened");
    }

    public void windowClosed(WindowEvent e) {
        System.out.println("Closed");
    }

    public void windowIconified(WindowEvent e) {
        System.out.println("Iconified");
    }

    public void windowDeiconified(WindowEvent e) {
        System.out.println("Deiconified");
    }

    public void windowActivated(WindowEvent e) {
        System.out.println("Activated");
    }

    public void windowDeactivated(WindowEvent e) {
        System.out.println("Deactivated");
    }
}

关于java - JFrame问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6496297/

相关文章:

java - Selenium WebElement.Click() 是否会等到下一页加载?

java - JAVA中this(var)和this.var有什么区别

java - 使用文本文件填充二叉搜索树

java - JTable添加数据后不会更新

java - 如何在 JTable 示例中为单元格颜色编号 (2,2) 中的特定单元格着色?

java - 如何在java jFrame中动态添加图片和文字?

Java-如何用java写渐变文字?

java - 如何使用JXDatePicker?

java - Eclipse 拒绝我的公共(public) void init 方法

java - 如何在 JPanel 内左对齐 JLabel?