在两个WxPython窗口之间传递变量

在两个WxPython窗口之间传递变量,python,class,parameters,wxpython,Python,Class,Parameters,Wxpython,所以我正在写一个程序,我需要从主GUI窗口到弹出窗口获取一个列表,该窗口使用主窗口中选择的选项执行操作 问题是,当我为新窗口调用类时,无法传递变量 创建实例时,我希望传递列表 act = Action(None, "Action") 但它只允许我传递窗口的名称,如果我尝试创建一个新参数,则会出现以下错误: Traceback (most recent call last): File "C:\Documents and Settings\User\Desktop\Invent Manage

所以我正在写一个程序,我需要从主GUI窗口到弹出窗口获取一个列表,该窗口使用主窗口中选择的选项执行操作

问题是,当我为新窗口调用类时,无法传递变量

创建实例时,我希望传递列表

act = Action(None, "Action")
但它只允许我传递窗口的名称,如果我尝试创建一个新参数,则会出现以下错误:

Traceback (most recent call last):
  File "C:\Documents and Settings\User\Desktop\Invent Manager.py", line 274, in auction
    act = Action(None, "Action", "item")
  File "C:\Documents and Settings\User\Desktop\Invent Manager.py", line 352, in __init__
    self.InitUI()    
  File "C:\Documents and Settings\User\Desktop\Invent Manager.py", line 357, in InitUI
    main = GUI()
TypeError: __init__() takes exactly 4 arguments (1 given)
这是我弹出窗口的初始值:

def __init__(self, parent, title, item_id):
        super(Action, self).__init__(parent, title=title, 
            size=(200, 200))
        self.InitUI()    
        self.Centre()
        self.Show()
有人请告诉我怎么做

以下是主GUI的
\uuuuu init\uuuu

class GUI(wx.Frame):
    #GUI
    def __init__(self, parent, id, title):
        self.inv = GetInvent()
        self.inv.Login()
        self.packages = self.inv.getinv()
        self.packages2 = self.inv.getSDB()
        self.id_list = self.inv.id_list

        self.show = 1

        wx.Frame.__init__(self, parent, id, title, size=(450, 400))

试试下面的代码。替换了
\uuuu init\uuuu
签名,使参数成为可选参数,但父参数除外,标题:

def __init__(self, parent, title, *args, **kwargs):
        super(Action, self).__init__(parent, title=title, size=(200, 200))
        self.InitUI()    
        self.Centre()
        self.Show()

那么现在我可以添加新参数还是什么?@ChristianCareaga,你可以添加新参数(在
*args
之前)。那么说我想添加一个
项目
参数,我怎么称呼它?@ChristianCareaga,我不明白你的意思。。将其称为
…(父项、标题、项)
?不,当我像这样创建实例
act=Action(无,“Action”,项)