简述
原始的 wxWidgets(用 C++ 编写)是一个巨大的类库。来自这个库的 GUI 类被移植到带有 wxPython 模块的 Python 中,它试图尽可能地镜像原始的 wxWidgets 库。因此,wxPython 中的 wx.Frame 类的行为方式与其 C++ 版本中的 wxFrame 类非常相似。
wxObject 是大多数类的基础。wxApp 的一个对象(wxPython 中的 wx.App)代表应用程序本身。生成 GUI 后,应用程序通过 MainLoop() 方法进入事件循环。下图描述了 wxPython 中最常用的 GUI 类的类层次结构。
序列号 |
类和描述 |
1 |
wx.Frame
wx.Frame 类有一个没有参数的默认构造函数。
|
2 |
wx.Panel
wx.Panel 类通常放在 wxFrame 对象中。这个类也继承自 wxWindow 类。
|
3 |
wx.StaticText
wx.StaticText 类对象提供了一个保存此类只读文本的控件。它可以被称为被动控制,因为它不产生任何事件。
|
4 |
TextCtrl
在 wxPython 中,wx.TextCtrl 类的对象用于此目的。它是一个可以显示和编辑文本的控件。
|
5 |
RadioButton & RadioBox
每个按钮,一个 wx.RadioButton 类的对象,在圆形按钮旁边带有一个文本标签。wxPython API 也包含 wx.RadioBox 类。它的对象为组提供了边框和标签。
|
6 |
wx.CheckBox
复选框显示一个带标签的小矩形框。单击时,矩形内会出现一个复选标记,表示已做出选择。
|
7 |
ComboBox & Choice Class
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.Toolbar
如果 wx.Toolbar 对象的样式参数设置为 wx.TB_DOCKABLE,则它变为可停靠。浮动工具栏也可以使用 wxPython 的 AUIToolBar 类来构建。
|
12 |
Wx.Dialog
尽管 Dialog 类对象看起来像 Frame,但它通常用作父框架顶部的弹出窗口。Dialog 的目标是从用户那里收集一些数据并将其发送到父框架。
|
13 |
wx.Notebook
wx.Notebook 小部件呈现一个选项卡式控件。框架中的一个 Notebook 对象具有一个或多个选项卡(称为页面),每个选项卡都有一个显示控件布局的面板。
|
14 |
wx.SplitterWindow
这个类的对象是一个布局管理器,它拥有两个子窗口,它们的大小可以通过拖动它们之间的边界来动态改变。拆分器控件提供了一个可以拖动以调整控件大小的手柄。
|
15 |
HTMLWindow
wxHTML 库包含用于解析和显示 HTML 内容的类。虽然这不是一个功能齐全的浏览器,但 wx.HtmlWindow 对象是一个通用的 HTML 查看器。
|
16 |
ListBox & ListCtrl
wx.ListBox 小部件呈现一个可垂直滚动的字符串列表。默认情况下,列表中的单个项目是可选的。ListCtrl 小部件是一个高度增强的列表显示和选择工具。报告视图、列表视图或图标视图中可以显示多列列表。
|