将参数从主窗口传递到弹出的Qdialog窗口

时间:2013-01-13 23:57:50

标签: python python-2.7 pyqt pyqt4

我有Qdialog,我从主窗口打开:

Dialog = myDialog(self)

以下是新打开的Dialog的代码:

class myDialog(QtGui.QDialog, Ui_DialogCalibration):
def __init__(self, parent=None):
    super(myDialog, self).__init__(parent)
    self.setupUi(self)

如何将参数(lint)从主窗口传递到这个新窗口,如

Dialog = myDialog(self, listInformation)

然后在myDialog类中使用该列表

1 个答案:

答案 0 :(得分:5)

class myDialog(QtGui.QDialog, Ui_DialogCalibration):
    def __init__(self, parent=None, listInfo):
        super(myDialog, self).__init__(parent)
        self.listInfo = listInfo
        self.setupUi(self)

然后,当您创建myDialog时,可以将列表添加为参数。当您需要在myDialog内使用它时,您可以self.listInfo访问它。

编辑:要进一步扩展评论:

如果您有def __init__(self, parent=None, listInfo=None),则将其称为Dialog = myDialog(parent=self, listInfo=listInfo)。如果您将其作为def __init__(self, parent, listInfo),则可以Dialog = myDialog(self, listInfo)。希望你能看到这里的模式。