我希望能够在 PyQt4 中显示 QDialog 时执行回调,最好通过信号/槽机制。查看 QDialog 上的 PyQt 文档,我找不到正确的信号来附加我想要运行的插槽。
有什么好的方法可以做到这一点?
如果您希望每次显示对话框时都发出信号,您可以创建一个如下所示的类:
class Dialog(QtGui.QDialog):
dialogShown = QtCore.pyqtSignal()
def showEvent(self, event):
super(Dialog, self).showEvent(event)
self.dialogShown.emit()
然后像这样使用它:
self.dialog = Dialog()
self.dialog.dialogShown.connect(self.handleDialogShown)