0

我需要一个可滚动的框架窗口并尝试使用 ScrollWindow() 方法,该方法文档字符串的参数应该是什么,以使框架完全可滚动..

ScrollWindow(self, int dx, int dy, Rect rect=None)

Physically scrolls the pixels in the window and move child 
 windows
accordingly.  Use this function to optimise your scrolling
implementations, to minimise the area that must be redrawn. 
 Note that
it is rarely required to call this function from a user program.

导入 wx

class Example(wx.Frame):

    def __init__(self, parent, title):
        super(Example, self).__init__(parent, title=title, 
            size=(300, 250))

        self.InitUI()
        self.Centre()
        self.Show()
        self.ScrollWindow()


    def InitUI(self):

        panel = wx.Panel(self)

        hbox = wx.BoxSizer(wx.HORIZONTAL)

        fgs = wx.FlexGridSizer(3, 2, 9, 25)

        title = wx.StaticText(panel, label="Title")
        author = wx.StaticText(panel, label="Author")
        review = wx.StaticText(panel, label="Review")

        tc1 = wx.TextCtrl(panel)
        tc2 = wx.TextCtrl(panel)
        tc3 = wx.TextCtrl(panel, style=wx.TE_MULTILINE)

        fgs.AddMany([(title), (tc1, 1, wx.EXPAND), (author), 
            (tc2, 1, wx.EXPAND), (review, 1, wx.EXPAND), (tc3, 1, wx.EXPAND)])

        fgs.AddGrowableRow(2, 1)
        fgs.AddGrowableCol(1, 1)

        hbox.Add(fgs, proportion=1, flag=wx.ALL|wx.EXPAND, border=15)
        panel.SetSizer(hbox)


if __name__ == '__main__':

    app = wx.App(False)
    Example(None, title='Review')
    app.MainLoop()
4

1 回答 1

0

ScrollWindow 不添加滚动窗口,它用于使窗口滚动,这就是它在您的帖子中声明的内容。

物理滚动窗口中的像素并相应地移动子窗口。

有 ScrolledWindow 或 ScrolledPanel 在 wxpython 演示中查看它们

于 2013-07-05T18:14:30.880 回答