wxPython 主要类


原始的 wxWidgets(用 C++ 编写)是一个巨大的类库。来自这个库的 GUI 类被移植到带有 wxPython 模块的 Python 中,它试图尽可能地镜像原始的 wxWidgets 库。因此,wxPython 中的 wx.Frame 类的行为方式与其 C++ 版本中的 wxFrame 类非常相似。

wxObject 是大多数类的基础。 wxApp 的一个对象(wxPython 中的 wx.App)代表应用程序本身。生成 GUI 后,应用程序通过 MainLoop() 方法进入事件循环。下图描述了 wxPython 中最常用的 GUI 类的类层次结构。

wxWindow Hierarchy wxGDIObject Hierarchy wxSizer Hierarchy wxButton Hierarchy
S.N. 类和描述
1 wx.Frame

wx.Frame 类有一个没有参数的默认构造函数。

2 wx.Panel

wx.Panel 类通常放在 wxFrame 对象中。这个类也继承自 wxWindow 类。

3 wx.StaticText

wx.StaticText 类对象提供了一个保存此类只读文本的控件。它可以被称为被动控制,因为它不产生任何事件。

4 TextCtrl

在 wxPython 中,wx.TextCtrl 类的对象用于此目的。它是一个可以显示和编辑文本的控件。

5 单选按钮和单选框

每个按钮,一个 wx.RadioButton 类的对象,在圆形按钮旁边带有一个文本标签。 wxPython API 也包含 wx.RadioBox 类。它的对象为组提供了边框和标签。

6 wx.CheckBox

复选框显示一个带标签的小矩形框。单击时,矩形内会出现一个复选标记,表示已做出选择。

7 组合框和选择类

wx.ComboBox 对象提供一个可供选择的项目列表。它可以配置为下拉列表或永久显示。 wxPython API 包含一个 wx.Choice 类,它的对象也是一个下拉列表,它是永久只读的。

8 Wx.Gauge

Wx.Gauge 类对象显示一个垂直或水平条,以图形方式显示递增数量。

9 wx.Slider

wxPython API 包含 wx.Slider 类。它提供与滚动条相同的功能。 Slider 提供了一种方便的方法来处理通过滑块特定的 wx.EVT_SLIDER 事件绑定器拖动句柄。

10 wx.MenuBar

顶层窗口标题栏正下方的水平条保留用于显示一系列菜单。它是 wxPython API 中 wx.MenuBar 类的一个对象。

11 wx.工具栏

如果 wx.Toolbar 对象的样式参数设置为 wx.TB_DOCKABLE,则它变为可停靠。浮动工具栏也可以使用 wxPython 的 AUIToolBar 类来构建。

12 对话框

尽管 Dialog 类对象看起来像 Frame,但它通常用作父框架顶部的弹出窗口。 Dialog 的目标是从用户那里收集一些数据并将其发送到父框架。

13 wx.笔记本

wx.注意book 小部件呈现一个选项卡式控件。框架中的一个 注意book 对象具有一个或多个选项卡(称为页面),每个选项卡都有一个显示控件布局的面板。

14 wx.SplitterWindow

Object of this class is a layout manager, which holds two subwindows whose size can be changed dynamically by dragging the boundaries between them. The Splitter control gives a handle that can be dragged to resize the controls.

15 HTML窗口

wxHTML 库包含用于解析和显示 HTML 内容的类。虽然这不是一个功能齐全的浏览器,但 wx.HtmlWindow 对象是一个通用的 HTML 查看器。

16 列表框和列表控件

wx.ListBox 小部件呈现一个可垂直滚动的字符串列表。默认情况下,列表中的单个项目是可选的。 ListCtrl 小部件是一个高度增强的列表显示和选择工具。报告视图、列表视图或图标视图中可以显示多列列表。