0

スクロール可能なフレーム ウィンドウが必要で、ScrollWindow() メソッドを使用しようとしています。フレームを完全にスクロール可能にするには、このメソッドの docstring のパラメーターを指定する必要があります。

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 に答える