如果一个ui关闭,多个uis的pyside父母会被破坏

时间:2017-03-09 16:17:29

标签: python qt pyside qmessagebox

当我为多个UI使用相同的父QWidget时,当用户关闭一个UI时,所有UI都关闭。有没有一个很好的理由和一个解决方案,以保持其他UI打开,当他们有相同的父母?

将“setQuitOnLastWindowClosed”设置为false会保持其他UI处于打开状态,但当然我想在最后一个窗口关闭时关闭QApplication,这样我就无法解决。

这是一个简单的例子。当你关闭一个消息框时,第二个消息框也会关闭,但我希望它保持打开状态。

from PySide.QtCore import *
from PySide.QtGui import *
import sys

class pCore():
    def __init__(self):
        self.msgParent = QWidget()
        self.msg1 = QMessageBox(QMessageBox.Information, "title", "test1", parent=self.msgParent)
        self.msg1.setModal(False)
        self.msg1.show()

        self.msg2 = QMessageBox(QMessageBox.Information, "title", "test2", parent=self.msgParent)
        self.msg2.setModal(False)
        self.msg2.show()

if __name__ == "__main__":
    qapp = QApplication(sys.argv)
    #qapp.setQuitOnLastWindowClosed(False)
    pc = pCore()
    sys.exit(qapp.exec_())

0 个答案:

没有答案
相关问题