求助,执行def on_listbox(self,event): 后 文本框的位置就变为靠左了,本来设置的是居中呢. 请帮忙。谢谢
import wx
class MyFrame(wx.Frame):
eve = 0
def __init__(self):
super().__init__(parent=None,title="vbox",size=(500,200),pos=(100,100)) #继承wx.Frame类
self.Center()
splitter = wx.SplitterWindow(self,-1)
leftpanel = wx.Panel(splitter)
self.rigntpanel = wx.Panel(splitter)
splitter.SplitVertically(leftpanel,self.rigntpanel,100)
splitter.SetMinimumPaneSize(80)
list2 = ['shanghai','beijin']
lb2=wx.ListBox(leftpanel,-1,choices = list2,style = wx.LB_SINGLE)
self.Bind(wx.EVT_LISTBOX,self.on_listbox,lb2)
vbox1 = wx.BoxSizer(wx.VERTICAL)
vbox1.Add(lb2,1,flag=wx.ALL | wx.EXPAND,border=5)
leftpanel.SetSizer(vbox1)
self.vbox2 = wx.BoxSizer(wx.VERTICAL)
self.content = wx.StaticText(self.rigntpanel,label='右侧面板',style=wx.ALIGN_CENTRE)
self.vbox2.Add(self.content, 0, flag=wx.ALL | wx.EXPAND | wx.ALIGN_CENTRE, border=5)
self.rigntpanel.SetSizer(self.vbox2)
def on_listbox(self,event):
s = '选择'+event.GetString()
self.content.SetLabel(s)
class App(wx.App):
def OnInit(self): #进入
frame = MyFrame()
frame.Show()
return True
def OnExit(self): #退出
print("tuichu")
return 0
if __name__ == '__main__':
app=App()
app.MainLoop()