覆盖 JFrame 的最小化

发布于 2024-11-05 02:24:02 字数 146 浏览 1 评论 0原文

我正在用记录器编写一个程序。记录器有自己的 JFrame。 我试图覆盖单击该框架的最小化按钮的反应。 我希望框架设置为 setVisible(false) 或执行 defaultCloseOperation (因为我之前将其设置为隐藏)。

我该怎么做? 提前致谢

I'm making a program with a logger. The logger has its own JFrame.
I'm trying to override the reaction from clicking on the minimize-button of that frame.
I would like the frame to either setVisible(false) or do the defaultCloseOperation (as i set that to hide earlier).

How should I do this?
Thanks in advance

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

黯然 2024-11-12 02:24:02

使用 JDialog 而不是 JFrame。 JDialogs 没有最小化按钮。

Use a JDialog instead of a JFrame. JDialogs don't have a minimize button.

一抹淡然 2024-11-12 02:24:02

您可以添加 WindowListener 并添加 图标化处理程序,当窗口最小化时将做出反应。

或许:

frame.addWindowListener(new WindowAdapter(){

      public void windowIconified(WindowEvent e){
            frame.setVisible(false);
      }
});

You can add a WindowListener and add a iconified handler that will react when the window is minimized.

Maybe:

frame.addWindowListener(new WindowAdapter(){

      public void windowIconified(WindowEvent e){
            frame.setVisible(false);
      }
});
终陌 2024-11-12 02:24:02

您可以使用 WindowStateListener像这样

    f.addWindowStateListener(new WindowStateListener() {

        @Override
        public void windowStateChanged(WindowEvent arg0) {
            if (arg0.getNewState() == Frame.ICONIFIED) {
                // do stuff
            }

        }
    });

You can use the WindowStateListener like this

    f.addWindowStateListener(new WindowStateListener() {

        @Override
        public void windowStateChanged(WindowEvent arg0) {
            if (arg0.getNewState() == Frame.ICONIFIED) {
                // do stuff
            }

        }
    });
半葬歌 2024-11-12 02:24:02

试试这个:

frame.addWindowListener(new WindowAdapter() {
 @Override
         public void windowIconified(WindowEvent event) 
         {
            //do your stuff
         }
 });

Try this:

frame.addWindowListener(new WindowAdapter() {
 @Override
         public void windowIconified(WindowEvent event) 
         {
            //do your stuff
         }
 });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文