【问题标题】:Python TypeError: CommandEvent.GetString(): too many argumentsPython TypeError:CommandEvent.GetString():参数太多
【发布时间】:2019-01-16 08:22:54
【问题描述】:

我目前正在使用 wx 在 python 中制作 UI。我试图同时激活多个选项卡,但同时我试图保持列表或 int 值处于活动状态并始终显示在任何选项卡的右下角。不幸的是,我似乎遇到了障碍。当我运行下面的代码时,我得到了错误:

i = parent.GetString(Points.a) TypeError: CommandEvent.GetString(): 参数太多

老实说,我只有一年的编码实践,我真的不知道这个错误意味着什么。如果可能的话,有人可以向我解释一下,并可能给我一些关于如何解决问题的提示吗?

提前致谢。

import wx
class Points:
    c = 14
    a = [14]
    b = "{}\n" .format(a)

class MOC(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent)
        self.poi = wx.StaticText(self, label=Points.b, pos=(400, 400))
        select = wx.Button(self, wx.ID_ANY, '+1', size=(90, 30))
        select.Bind(wx.EVT_BUTTON, self.add)

    def add(self, parent):
        i = parent.GetString(Points.a)
        Points.a.remove(Points.c)
        Points.c += 1
        Points.a.append(Points.c)
        self.poi.SetLabel(i)
        
class TOS(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent)
        wx.StaticText(self, label=Points.b, pos=(400, 400))

class UIFrame(wx.Frame):
    def __init__(self):
        wx.Frame.__init__(self, None, size = (500,500), title = "Mind")
        p = wx.Panel(self)
        nb = wx.Notebook(p)

        page1 = MOC(nb)
        page2 = TOS(nb)
        nb.AddPage(page1, "Means")
        nb.AddPage(page2, "Types")

        sizer = wx.BoxSizer()
        sizer.Add(nb, 1, wx.EXPAND)
        p.SetSizer(sizer)
        

if __name__ == "__main__":
    app = wx.App()
    UIFrame().Show()
    app.MainLoop()
        

【问题讨论】:

    标签: python python-2.7 wxpython


    【解决方案1】:

    i = parent.GetString(Points.a) 行中,您传递参数Points.a 但GetString 没有参数,因为它用于从项目中获取字符串,即self.Item.GetString()
    Points.a 不是wx已定义的项目,它实际上是一个 python list,要访问它,您应该使用
    i = str(Points.a[0])
    i = Points.a[0]
    i = Points.a
    @987654329 更改上面的违规行@ 取决于您的要求。

    根据您选择的访问方法,您可能需要更改 self.poi.SetLabel(i) 以及 i 可以是 listint 而不是必需的 str

    使用第一个选项运行无需进一步更改

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-09
      • 1970-01-01
      • 2015-10-10
      相关资源
      最近更新 更多