wxPython官方文档中文翻译 - 拆分窗口概述

86 阅读1分钟

官方文档:docs.wxpython.org/splitterwin…

以下屏幕截图展示了一个水平拆分的拆分窗口的外观。

使用了wx.SP_3D样式来显示三维边框和三维分隔条。

示例

以下代码片段展示了如何创建一个拆分窗口,创建两个子窗口并隐藏其中一个:

splitter = wx.SplitterWindow(self, -1, wx.Point(0, 0),
                             wx.Size(400, 400), wx.SP_3D)

leftWindow = MyWindow(splitter)
leftWindow.SetScrollbars(20, 20, 50, 50)

rightWindow = MyWindow(splitter)
rightWindow.SetScrollbars(20, 20, 50, 50)
rightWindow.Show(False)

splitter.Initialize(leftWindow)

# 设置这个以防止拆分器取消拆分
# splitter.SetMinimumPaneSize(20)

下一个代码片段展示了在创建拆分窗口后,如何对其进行操作:

def OnSplitVertical(self, event):

    if splitter.IsSplit():
        splitter.Unsplit()

    leftWindow.Show(True)
    rightWindow.Show(True)
    splitter.SplitVertically(leftWindow, rightWindow)


def OnSplitHorizontal(self, event):

    if splitter.IsSplit():
        splitter.Unsplit()

    leftWindow.Show(True)
    rightWindow.Show(True)
    splitter.SplitHorizontally(leftWindow, rightWindow)


def OnUnsplit(self, event):

    if splitter.IsSplit():
        splitter.Unsplit()