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

yipeiwu_com6年前Python基础

一般采用的方法:

self.window = Qdialog() # 实例化

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

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

修改办法:

window = Qdialog()

window.show()

window.exec_()

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

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

相关文章

python内存管理机制原理详解

python内存管理机制原理详解

python内存管理机制: 引用计数 垃圾回收 内存池 1. 引用计数 当一个python对象被引用时 其引用计数增加 1 ; 当其不再被变量引用时 引用计数减 1...

python中pandas.DataFrame对行与列求和及添加新行与列示例

本文介绍的是python中pandas.DataFrame对行与列求和及添加新行与列的相关资料,下面话不多说,来看看详细的介绍吧。 方法如下: 导入模块: from pandas i...

在Pytorch中使用样本权重(sample_weight)的正确方法

step: 1.将标签转换为one-hot形式。 2.将每一个one-hot标签中的1改为预设样本权重的值 即可在Pytorch中使用样本权重。 eg: 对于单个样本:loss = -...

Python多继承以及MRO顺序的使用

多继承以及MRO顺序 1. 单独调用父类的方法 # coding=utf-8 print("******多继承使用类名.__init__ 发生的状态******") class...

PyQt5实现五子棋游戏(人机对弈)

PyQt5实现五子棋游戏(人机对弈)

这篇博客主要是为了学习Python和PyQt,因为对棋类游戏比较热衷,所以从规则较简单的五子棋入手,利用PyQt5实现图形界面,做一个可以进行人机对弈的脚本,最后打包成应用程序。AI的算...