pyQt5 子窗口弹出后无法激活,原来默认是模态窗口,太坑了!!!!

在PyQt5中,通过主窗口按钮弹出子窗口时遇到问题,子窗口无法被激活。原因在于默认情况下,子窗口是模态窗口,导致交互受阻。解决方法是将子窗口设置为非模态,允许自由切换窗体。在Qt Designer中调整窗体模态设置,避免应用程序级模态,确保正常切换。
摘要由CSDN通过智能技术生成

通过主窗口的按钮弹出子窗口,代码很简单,只需要保证两个窗体选择的都有show方法即可,所以建立类时要继承具有该方法的基类

class My_MainWindow(QtWidgets.QMainWindow):

            ..........

 

class childwindow(QtWidgets.QMainWindow):   # 可以是QDiolague

           ......

问题来了:子窗口无法点击,一直停留在主窗口

由于本人是菜鸟对问题类型还不明确,百度了一通没有答案,搞了一天没结果,后来想着看看教学视频中关于子窗体的设置,功夫不负有心人,发现了模态和非模态的窗体状态,果断有了答案,我面临的问题一看就是模态阻塞子窗体了。

Qt designer中窗体模态的设置在这里,一定要注意这个,默认是应用程序级的模态!!所以你能看到两个窗体但是只能激活目前这个。

 

我应该设置成这样,才能实现不同窗体的自由切换

  

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

dj Yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值