等。。 2020-04-18 15:37 采纳率: 0%
浏览 146

wxpython的布局事件变动问题

求助,执行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()
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-09 18:30
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥50 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥200 uniapp长期运行卡死问题解决
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?
  • ¥15 为什么使用javacv转封装rtsp为rtmp时出现如下问题:[h264 @ 000000004faf7500]no frame?