- wxPython 教程
- wxPython - 首页
- wxPython - 简介
- wxPython - 环境配置
- wxPython - Hello World
- wxPython - GUI构建工具
- wxPython - 主要类
- wxPython - 事件处理
- wxPython - 布局管理
- wxPython - 按钮
- wxPython - 可停靠窗口
- 多文档界面
- wxPython - 绘图API
- wxPython - 拖放操作
- wxPython 资源
- wxPython - 快速指南
- wxPython - 有用资源
- wxPython - 讨论
wxPython - 主要类
原始的 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 类
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 小部件是一个高度增强的列表显示和选择工具。可以在报表视图、列表视图或图标视图中显示多列列表。 |