我正在尝试使用以下代码从python中的列表填充列表框:
import wx
class ListBoxFrame(wx.Frame):
def __init__(self):
wx.Frame.__init__(self, None, -1, 'List Box Example', size=(500, 500))
panel = wx.Panel(self, -1)
btn1 = wx.Button(self, 1, 'List Items', (300, 130))
btn1.Bind(wx.EVT_BUTTON, self.ListItems)
listBox1 = wx.ListBox(choices=[], name='listBox1', parent=self, pos=wx.Point(8, 48), size=wx.Size(184, 256), style=0)
def ListItems(self, event):
sampleList = ['zero', 'one', 'two', 'three', 'four', 'five','six', 'seven', 'eight', 'nine', 'ten', 'eleven','twelve', 'thirteen', 'fourteen']
for item in sampleList:
self.listBox1.Insert(0,item)
但我遇到以下错误: AttributeError:'ListBoxFrame'对象没有属性'listBox1' 你能告诉我我做错了吗?
由于
答案 0 :(得分:2)
__init__
中的这一行:
listBox1 = wx.ListBox(..etc..)
应该是:
self.listBox1 = wx.ListBox(..etc..)
Python中的所有实例访问都通过self.
完成。