调用show()后QWidget未显示

2024-05-29 10:01:17 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的应用程序中,我有一个QWidget,它在我调用show()之后没有显示,即使isVisible返回{}。在

这个小部件是从主应用程序窗口的事件创建的。但当它独立启动时,也就是说,作为应用程序中唯一的小部件,它会正常显示。在

有人知道什么会导致这种行为吗?在

我的应用程序中的其他小部件正常显示,只有这一个给我带来了麻烦。它实际上在Qt4的前一个版本下工作得很好(不记得是哪个)。在

小部件的代码是here

更新:windows似乎出现了,并立即被销毁。在


Tags: 代码版本应用程序here部件windowsshow事件
1条回答
网友
1楼 · 发布于 2024-05-29 10:01:17

相关代码在hidx/GUI/main.py

@pyqtSignature("")
def on_actionScatterplot_Matrix_activated(self):
    ...
    spm = scatmat.ScatMat(pars, self.currentdbname)
    print "==>", spm.pw.isVisible()
    spm.pw.hide()
    spm.pw.showMaximized()
    print spm.pw.size()
    print "==>", spm.pw.isVisible()

@pyqtSignature("int")
def on_rowStart_valueChanged(self, p0):
    ...

on_actionScatterplot_Matrix_activated中,创建ScatMat的实例,但不保留对它的引用。因此,该窗口将短暂显示,然后在函数完成后立即进行垃圾回收。在

相关问题 更多 >

    热门问题