Python 将参数从主窗口传递到弹出的Qdialog窗口
我有一个从主窗口打开的Qdialog:Python 将参数从主窗口传递到弹出的Qdialog窗口,python,python-2.7,pyqt,pyqt4,Python,Python 2.7,Pyqt,Pyqt4,我有一个从主窗口打开的Qdialog: Dialog = myDialog(self) 以下是新打开的对话框中的代码: class myDialog(QtGui.QDialog, Ui_DialogCalibration): def __init__(self, parent=None): super(myDialog, self).__init__(parent) self.setupUi(self) 如何将参数(lint)从主窗口传递到这个新窗口,例如 Dialog =
Dialog = myDialog(self)
以下是新打开的对话框中的代码:
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类中使用该列表
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\uuuu init\uuuu(self,parent=None,listInfo=None)
,您可以将其称为Dialog=myDialog(parent=self,listInfo=listInfo)
。如果您将其设置为def\uuuu init\uuuu(self,parent,listInfo)
您将执行Dialog=myDialog(self,listInfo)
。希望你能看到这里的模式
然后,当您创建myDialog
时,可以将列表添加为参数。当您需要在myDialog
中使用它时,您可以通过self.listInfo
访问它
编辑:进一步展开评论:
如果您有
def\uuuu init\uuuu(self,parent=None,listInfo=None)
,您可以将其称为Dialog=myDialog(parent=self,listInfo=listInfo)
。如果您将其设置为def\uuuu init\uuuu(self,parent,listInfo)
您将执行Dialog=myDialog(self,listInfo)
。希望您能在这里看到这种模式。从main i call Dialog=myDialog(self,listinfo),当我编写代码时,我得到了这个错误类型error:QDialog(QWidget parent=None,Qt.WindowFlags flags=0):参数1具有意外的类型“list”。事实上,当我以Dialog=myDialog(listinfo)的形式弹出对话框而不是传递self时,它会起作用。这是否意味着在校准弹出窗口时,我不应该将self作为参数传递给您?我的道歉。我知道你在做什么。请尝试Dialog=myDialog(self,listInfo,parent=self)
或将\uuuuu init\uuuuuu>更改为\uuuu init\uuuuuuuuu(self,parent=None,listInfo=None)
,然后使用Dialog=myDialog(parent=self,listInfo=listInfo)
,或类似的内容。看看Python中的关键字和位置参数。看看我更新的答案。从main我调用Dialog=myDialog(self,listinfo),当我编写代码时,我得到了这个错误类型error:QDialog(QWidget parent=None,Qt.WindowFlags flags=0):参数1有意外的类型“list”。事实上,当我以Dialog=myDialog(listinfo)的形式弹出对话框而不是传递self时,它就起作用了。这是否意味着在校准弹出窗口时,我不应该将self作为参数传递给您?我的道歉。我知道你在做什么。请尝试Dialog=myDialog(self,listInfo,parent=self)
或将\uuuuu init\uuuuuu>更改为\uuuu init\uuuuuuuuu(self,parent=None,listInfo=None)
,然后使用Dialog=myDialog(parent=self,listInfo=listInfo)
,或类似的内容。看看Python中的关键字和位置参数。看看我最新的答案。