
- 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 小部件是一個高度增強的列表顯示和選擇工具。可以在報表檢視、列表檢視或圖示檢視中顯示多列列表。 |