把关闭窗口改为最小化

#region   拦截Windows消息

        protected override void WndProc(ref   Message m)

       {

            const int WM_SYSCOMMAND= 0x0112;

            const int SC_CLOSE= 0xF060;

            if (m.Msg ==WM_SYSCOMMAND && (int)m.WParam == SC_CLOSE)

           {

                //捕捉关闭窗体消息     

               //  User   clicked   close  button     

                this.Hide();

                return;

           }

            base.WndProc(ref  m);

       }

       #endregion 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用PyQt5开发GUI应用程序时,可以使用setFixedSize()方法来设置窗口的固定大小。然而,这样的设置可能会导致无法最小化和退出窗口的问题。 固定大小的窗口意味着无法通过拖动边框来调整窗口的大小,因此也无法最小化和退出窗口。当用户尝试点击窗口最小化关闭按钮时,系统会尝试调用minimize()或close()方法来实现对应的操作。然而,由于窗口大小被设置为固定值,系统无法修改窗口的大小,因此这些操作无法成功执行。 解决这个问题的方法是,在创建窗口对象时,不要使用setFixedSize()方法来设置固定大小。而是使用默认的窗口大小,并通过调整布局和控件的方式来实现界面的自适应和大小限制。例如,可以使用布局管理器来自动调整控件的位置和大小,或在必要时使用setMinimumSize()和setMaximumSize()方法来设置控件的最小和最大尺寸。 另外,如果确实需要设置固定大小的窗口,并希望能够最小化和退出窗口,可以考虑重写窗口最小化关闭事件方法。通过在这些方法中手动实现对应的操作,可以绕过系统无法修改窗口大小的限制。例如,在最小化事件方法中,可以调用self.setWindowState(Qt.WindowMinimized)来实现最小化窗口的效果;在关闭事件方法中,可以调用self.close()来实现关闭窗口的效果。 总之,setFixedSize()方法会导致无法最小化和退出窗口的问题。要解决这个问题,可以避免使用该方法,而是使用布局管理器和控件属性来实现界面的自适应和大小限制。如果确实需要设置固定大小的窗口,可以重写最小化关闭事件方法来手动实现对应的操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值