wxPython - 主要类
原来的wxWidgets(用C++编写)是一个巨大的类库。该库中的 GUI 类通过 wxPython 模块移植到 Python,该模块尝试尽可能接近地镜像原始 wxWidgets 库。因此,wxPython 中的 wx.Frame 类与 C++ 版本中的 wxFrame 类的Behave方式非常相似。
wxObject 是大多数类的基础。wxApp 的对象(wxPython 中的 wx.App)代表应用程序本身。生成 GUI 后,应用程序通过 MainLoop() 方法进入事件循环。下图描述了 wxPython 中最常用的 GUI 类的类层次结构。
序列号 | 类别和描述 |
---|---|
1 | wx.Frame
wx.Frame 类有一个不带参数的默认构造函数。 |
2 | wx.面板
wx.Panel 类通常放在 wxFrame 对象内。这个类也是继承自wxWindow类。 |
3 | wx.静态文本
wx.StaticText 类对象提供了一个保存此类只读文本的控件。它可以被称为被动控制,因为它不产生任何事件。 |
4 | 文本控制
在 wxPython 中,wx.TextCtrl 类的对象可以实现此目的。它是一个可以显示和编辑文本的控件。 |
5 | 单选按钮和单选框
每个按钮(wx.RadioButton 类的对象)在圆形按钮旁边带有一个文本标签。wxPython API也由wx.RadioBox类组成。它的对象为组提供了边框和标签。 |
6 | wx.CheckBox
复选框显示一个带标签的小矩形框。单击时,矩形内会出现一个复选标记,表示已做出选择。 |
7 | 组合框和选择类
wx.ComboBox 对象提供了一个可供选择的项目列表。它可以配置为下拉列表或永久显示。wxPython API包含一个wx.Choice类,它的对象也是一个下拉列表,它是永久只读的。 |
8 | Wx 规格
Wx.Gauge 类对象显示垂直或水平条,以图形方式显示增量数量。 |
9 | wx.滑块
wxPython API包含wx.Slider类。它提供与滚动条相同的功能。Slider 提供了一种方便的方法来通过滑块特定的 wx.EVT_SLIDER 事件绑定器来处理拖动手柄。 |
10 | wx.MenuBar
顶层窗口标题栏正下方的水平栏被保留用于显示一系列菜单。它是wxPython API中wx.MenuBar类的一个对象。 |
11 | wx.工具栏
如果wx.Toolbar对象的style参数设置为wx.TB_DOCKABLE,它就变成可停靠的。浮动工具栏也可以使用wxPython的AUIToolBar类来构造。 |
12 | Wx.Dialog
尽管 Dialog 类对象看起来像 Frame,但它通常用作父框架顶部的弹出窗口。对话框的目标是从用户收集一些数据并将其发送到父框架。 |
13 | wx.笔记本
wx.Notebook 小部件呈现一个选项卡式控件。框架中的一个 Notebook 对象具有一个或多个选项卡(称为“页面”),每个选项卡都有一个显示控件布局的面板。 |
14 | wx.SplitterWindow
该类的对象是一个布局管理器,它包含两个子窗口,可以通过拖动它们之间的边界来动态更改其大小。Splitter 控件提供了一个手柄,可以拖动该手柄来调整控件的大小。 |
15 | HTML窗口
wxHTML 库包含用于解析和显示 HTML 内容的类。尽管这并不是一个全功能的浏览器,但 wx.HtmlWindow 对象是一个通用的 HTML 查看器。 |
16 | 列表框和列表控件
wx.ListBox 小部件呈现一个可垂直滚动的字符串列表。默认情况下,列表中的单个项目是可选择的。ListCtrl 小部件是一个高度增强的列表显示和选择工具。多列列表可以在报告视图、列表视图或图标视图中显示。 |