python-wxpython-scrolledwindow滚动条显示不全,求解

import wx
import wx.lib.scrolledpanel as scrolled
class MsgWindow(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title,size=(300,640),pos=(600,100))
        p_panel = wx.Panel(self)
        panel = scrolled.ScrolledPanel(p_panel,-1,size=(260,350),style=wx.DOUBLE_BORDER)
        self.scroller = wx.ScrolledWindow(panel,-1,pos=(240,0))
        self.scroller.SetScrollbars(0,10,250,700)
        bt = wx.StaticText(p_panel,style=wx.ALIGN_RIGHT, label='ts')
        bt1 = wx.StaticText(panel,style=wx.ALIGN_CENTER_HORIZONTAL,label='label')
        bt1.SetFont(wx.Font(20,wx.FONTFAMILY_DEFAULT,wx.FONTSTYLE_NORMAL,wx.FONTWEIGHT_NORMAL))
        hbox = wx.BoxSizer(wx.HORIZONTAL)
        hbox.Add(bt1,1,flag=wx.CENTER|wx.ALL ,border=10)
        panel.SetSizer(hbox)
        hbox.Fit(panel)
        vbox= wx.BoxSizer(wx.VERTICAL)
        vbox.Add(bt,1,flag=wx.CENTER|wx.ALL ,border=10)
        vbox.Add(panel,1,flag=wx.EXPAND|wx.ALL,border=10)
        p_panel.SetSizer(vbox)

if __name__ == '__main__':
    app = wx.App(redirect=False)
    msg_win = MsgWindow(None, -1, u'消息')
    msg_win.Show(True)
    app.MainLoop()

已解决。

 

把代码改为:

import wx
import wx.lib.scrolledpanel as scrolled
class MsgWindow(wx.Frame):
    def __init__(self, parent, id, title):
        wx.Frame.__init__(self, parent, id, title,size=(300,640),pos=(600,100))
        p_panel = wx.Panel(self)
        panel = scrolled.ScrolledPanel(p_panel,-1,size=(260,350),style=wx.DOUBLE_BORDER)

        self.scrolled_panel.SetAutoLayout(1) 
        self.scrolled_panel.SetupScrolling()

        self.scroller = wx.ScrolledWindow(panel,-1,pos=(240,0))
        self.scroller.SetScrollbars(0,10,250,700)
        bt = wx.StaticText(p_panel,style=wx.ALIGN_RIGHT, label='ts')
        bt1 = wx.StaticText(panel,style=wx.ALIGN_CENTER_HORIZONTAL,label='label')
        bt1.SetFont(wx.Font(20,wx.FONTFAMILY_DEFAULT,wx.FONTSTYLE_NORMAL,wx.FONTWEIGHT_NORMAL))
        hbox = wx.BoxSizer(wx.HORIZONTAL)
        hbox.Add(bt1,1,flag=wx.CENTER|wx.ALL ,border=10)
        panel.SetSizer(hbox)
        hbox.Fit(panel)
        vbox= wx.BoxSizer(wx.VERTICAL)
        vbox.Add(bt,1,flag=wx.CENTER|wx.ALL ,border=10)
        vbox.Add(panel,1,flag=wx.EXPAND|wx.ALL,border=10)
        p_panel.SetSizer(vbox)

if __name__ == '__main__':
    app = wx.App(redirect=False)
    msg_win = MsgWindow(None, -1, u'消息')
    msg_win.Show(True)
    app.MainLoop()