自学Python和wxPython。不知道我在这里做错了什么,可以使用比我自己更聪明的人的一些见解......
import wx
from wxPython.wx import *
class myGUI(wx.Frame):
def __init__(self, parent, title):
super(myGUI, self).__init__(parent, title=title,
size=(450, 350))
panel = wx.Panel(self)
sizer = wx.GridBagSizer(5, 5)
# Main Database Text, Entry and Browse Button ------------------------------
label_MainDatabase = wx.StaticText(panel, label="Main Database:")
sizer.Add(label_MainDatabase, pos=(0, 0), flag=wx.LEFT|
wx.ALIGN_CENTER_VERTICAL, border=20)
tc_MainDatabase = wx.TextCtrl(panel)
sizer.Add(tc_MainDatabase, pos=(0, 1), span=(1, 3), flag=wx.TOP|
wx.EXPAND|wx.ALIGN_CENTER_VERTICAL)
tc_MainDatabase.Value = "DBG: I am properly initialized."
bt_MainDatabase = wx.Button(panel, label="Browse...")
sizer.Add(bt_MainDatabase, pos=(0, 4), flag=wx.LEFT|wx.RIGHT|
wx.ALIGN_CENTER_VERTICAL, border=0)
bt_MainDatabase.Bind(wx.EVT_BUTTON, self.bt_MainDatabaseClick,
bt_MainDatabase)
# --------------------------------------------------------------------------
sizer.AddGrowableCol(2)
panel.SetSizer(sizer)
self.Centre()
self.Show()
def bt_MainDatabaseClick(self, event):
# Create a list of filters
self.tc_MainDatabase.SetValue = "A"
if __name__ == '__main__':
app = wx.App()
myGUI(None, title="myGUI")
app.MainLoop()
单击“浏览”按钮时出现以下错误: AttributeError:'myGUI'对象没有属性'tc_MainDatabase'
我做错了什么?我试图从Browse按钮捕获信息,然后更新文本控制字段(tc_MainDatabase)。我已经尝试重新排列def语句的顺序等。
是的,我总是双脚跳进去。这是我知道如何学习的唯一方式...... :)
感谢。
-Chow
答案 0 :(得分:2)
也许是因为你说:
tc_MainDatabase = wx.TextCtrl(panel)
而不是:
self.tc_MainDatabase = wx.TextCtrl(panel)