Wxpython 简明教程

wxPython - Major Classes

原始的 wxWidgets(用 C 语言编写)是一个庞大的类库。此库中的 GUI 类已通过 wxPython 模块移植到 Python,该模块尝试尽可能镜像原始 wxWidgets 库。因此,wxPython 中的 wx.Frame 类的作用与 C 版本中的 wxFrame 类非常相似。

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

wxwindow class hierarchy
wxgdiobject class hierarchy
wxsizer class hierarchy
wxbutton class hierarchy

S.N.

Classes & Description

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类。它提供与滚动条相同的功能。滑块提供了一种通过特定wx.EVT_SLIDER事件绑定程序拖动控制杆的方便方式。

10

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

11

wx.Toolbar 如果wx.Toolbar对象的style参数设置为wx.TB_DOCKABLE,它将可停靠。还可以使用wxPython的AUIToolBar类构造一个浮动工具栏。

12

Wx.Dialog 尽管Dialog类对象看起来像Frame,但通常将其用作父框架上的弹出窗口。Dialog的目的在于从用户处收集一些数据并将这些数据发送到父框架。

13

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

14

wx.SplitterWindow 此类对象是一个布局管理器,它持有两个子窗口,其大小可以通过拖动它们之间的边界动态更改。Splitter控件提供一个可以拖动以调整控件大小的手柄。

15

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

16

ListBox & ListCtrl wx.ListBox小部件显示一个垂直可滚动字符串列表。默认情况下,列表中只能选择一个项目。ListCtrl小部件是一个经过高度增强的列表显示和选择工具。可以在列表视图或图标视图中显示多于一列的列表。