马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 坐等回答 于 2020-5-15 15:58 编辑
python的wxpython模块的触发函数调用初始化函数中定义的控件失败,请问大神们应该如何调用呢?
部分代码如下class Frame1(wx.Frame):
def __init__(self,superior): 重定义__init__函数
wx.Frame.__init__(self,parent=superior,title="信息可视化",pos=(100,200),size=(350,200)) #创建frame
panel=wx.Panel(self) #创建panel
boxx=wx.BoxSizer(wx.HORIZONTAL) #创建boxsizer
button=wx.Button(panel,label="确定") #创建button
boxx.Add(button,1) #将按钮放入sizer中
tc=wx.TextCtrl(panel) #创建textctrl
boxx.Add(tc,1) #将输入框放进sizer中
self.Bind(wx.EVT_BUTTON,self.Select,button) #将按钮捆绑select函数
def Select(self,event): #获得输入框内容函数
a=frame.tc.GetValue() #获得输入框内容 ,此处出错,不知如何调用
frame.tc.Clear() #将输入框内容清空,出错
if __name__=='__main__':
app=wx.App()
frame=Frame1(None)
frame.Show(True)
app.MainLoop()
出现a=frame.tc.GetValue()
AttributeError: 'Frame1' object has no attribute 'tc'
错误,请教大神应该如何调用这个输入框
self.tc=wx.TextCtrl(panel)
boxx.Add(self.tc,1)
加上 self 即可
|