1

このコードを使用して、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'があり ません。何が間違っているのか教えてください。

ありがとう

4

1 に答える 1

2

あなたのこの行__init__

listBox1 = wx.ListBox(..etc..)

次のようにする必要があります。

self.listBox1 = wx.ListBox(..etc..)

Python でのすべてのインスタンス アクセスは、self..

于 2012-07-24T23:56:41.150 に答える