使用pyqt 实现重复打开多个相同界面

yipeiwu_com6年前Python基础

一般采用的方法:

self.window = Qdialog() # 实例化

self.window.show() # 显示界面

用这种方法只能打开一个界面,self使得默认只存在一个界面,不能重复打开多个相同界面。

修改办法:

window = Qdialog()

window.show()

window.exec_()

去掉self,使得默认单一界面取消,同时加上exec_(),如果不加的话,会使得界面闪退。曾尝试使用exec()模态,利用其阻塞特性来阻止界面闪退,但同时存在一个问题,在对该界面关闭前,不能对其它界面进行操作。针对这些问题,做出了上述修改,最终实现了效果。

以上这篇使用pyqt 实现重复打开多个相同界面就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python基于json文件实现的gearman任务自动重启代码实例

一:在gearman任务失败后,调用task_failed def task_failed(task, *args): info = '\n'.join(args) dat...

将pip源更换到国内镜像的详细步骤

将pip源更换到国内镜像的详细步骤

pip是一个很好用的第三方库安装方式,但是默认的源没法连接,就算有时候可以成功率也很低,所以换成国内镜像源比较方便。 将pip源更换到国内镜像 用pip管理工具安装库文件时,默认使用国...

Python装饰器实现几类验证功能做法实例

最近新需求来了,要给系统增加几个资源权限。尽量减少代码的改动和程序的复杂程度。所以还是使用装饰器比较科学 之前用了一些登录验证的现成装饰器模块。然后仿写一些用户管理部分的权限装饰器。 比...

Python多线程结合队列下载百度音乐的方法

本文实例讲述了Python多线程结合队列下载百度音乐的方法。分享给大家供大家参考。具体如下: 一直想做个下载音乐的脚本,后来决定就拿百度音乐开刀,经过多次分析,终于制作了一个下载百度音乐...

详解Django中CBV(Class Base Views)模型源码分析

详解Django中CBV(Class Base Views)模型源码分析

在view文件中编写一个类,并配置好路由 class Test(View): def get(self, request, *args, **kwargs): return Ht...