我目前正在使用 qmdiarea 和 mdisubwindows 编写一个带有多个小部件的 pyqt5 应用程序。我有一个显示图像的主子窗口和与该主子窗口关联的几个小部件。最终,我想摆脱所有附件小部件。虽然我收到一条警告消息,而不是错误,但我想摆脱这个警告消息。
这是我创建子窗口以及关闭它们的方式:
子窗口创建:
self.LUTobj = QMdiSubWindow()
self.DATAobj = QMdiSubWindow()
self.MEASUREobj = QMdiSubWindow()
self.REFERENCEobj = QMdiSubWindow()
self.SPATIALRESOLobj= QMdiSubWindow()
self.LINEPROFILEobj = QMdiSubWindow()
self.SNRobj = QMdiSubWindow()
self.CNRobj = QMdiSubWindow()
子窗口删除:
def closeSubwindowObject(self):
if self.LUTobj is not None:
self.mdiArea.removeSubWindow (self.LUTobj)
if self.DATAobj is not None:
self.mdiArea.removeSubWindow (self.DATAobj)
if self.MEASUREobj is not None:
self.mdiArea.removeSubWindow (self.MEASUREobj)
if self.REFERENCEobj is not None:
self.mdiArea.removeSubWindow (self.REFERENCEobj)
if self.SPATIALRESOLobj is not None:
self.mdiArea.removeSubWindow (self.SPATIALRESOLobj)
if self.LINEPROFILEobj is not None:
self.mdiArea.removeSubWindow (self.LINEPROFILEobj)
if self.SNRobj is not None:
self.mdiArea.removeSubWindow (self.SNRobj)
if self.CNRobj is not None:
self.mdiArea.removeSubWindow (self.CNRobj)
这是显示的警告消息:
QMdiArea::removeSubWindow:窗口不在工作空间内
关于如何检查窗口是否在工作区内的任何线索?