wxPython - 主要類



原始的 wxWidgets(用 C++編寫)是一個龐大的類庫。該庫中的 GUI 類透過 wxPython 模組移植到 Python,該模組試圖儘可能地映象原始 wxWidgets 庫。因此,wxPython 中的 wx.Frame 類與 C++ 版本中的 wxFrame 類的工作方式非常相似。

wxObject 是大多數類的基類。wxApp(在 wxPython 中為 wx.App)的物件代表應用程式本身。生成 GUI 後,應用程式透過 MainLoop() 方法進入事件迴圈。下圖描述了 wxPython 中最常用的 GUI 類的類層次結構。

wxWindow Hierarchy wxGDIObject Hierarchy wxSizer Hierarchy wxButton Hierarchy
序號 類 & 描述
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 小部件是一個高度增強的列表顯示和選擇工具。可以在報表檢視、列表檢視或圖示檢視中顯示多列列表。

廣告