tkinter.tix — Tk 的擴充套件部件

原始碼: Lib/tkinter/tix.py

3.6 版後已棄用: 此 Tk 擴充套件未維護,不應在新程式碼中使用。請改用 tkinter.ttk


tkinter.tix(Tk 介面擴充套件)模組提供了一組額外的豐富部件。雖然標準 Tk 庫有許多有用的部件,但它們還遠遠不夠完善。tkinter.tix 庫提供了標準 Tk 中缺少的大多數常用部件:HListComboBoxControl(又名 SpinBox)以及各種可滾動部件。tkinter.tix 還包含許多在各種應用程式中普遍有用的部件:NoteBookFileEntryPanedWindow 等;共有 40 多個。

藉助所有這些新部件,您可以將新的互動技術引入應用程式,建立更有用、更直觀的使用者介面。您可以透過選擇最合適的部件來設計您的應用程式,以滿足您的應用程式和使用者的特殊需求。

另請參閱

Tix 主頁

Tix 的主頁。這包括指向其他文件和下載的連結。

Tix 手冊頁

手冊頁和參考資料的線上版本。

Tix 程式設計指南

程式設計師參考資料的線上版本。

Tix 開發應用程式

用於開發 Tix 和 Tkinter 程式的 Tix 應用程式。Tide 應用程式可在 Tk 或 Tkinter 下執行,幷包含 TixInspect,這是一個用於遠端修改和除錯 Tix/Tk/Tkinter 應用程式的檢查器。

使用 Tix

class tkinter.tix.Tk(screenName=None, baseName=None, className='Tix')

Tix 的頂層部件,主要表示應用程式的主視窗。它有一個關聯的 Tcl 直譯器。

tkinter.tix 模組中的類是 tkinter 中類的子類。前者匯入了後者,因此要將 tkinter.tix 與 Tkinter 一起使用,您只需匯入一個模組。通常,您只需匯入 tkinter.tix,並將對 tkinter.Tk 的頂層呼叫替換為 tix.Tk

from tkinter import tix
from tkinter.constants import *
root = tix.Tk()

要使用 tkinter.tix,您必須安裝 Tix 部件,通常與 Tk 部件一起安裝。要測試您的安裝,請嘗試以下操作

from tkinter import tix
root = tix.Tk()
root.tk.eval('package require Tix')

Tix 部件

Tixtkinter 庫引入了 40 多個部件類。

基本部件

class tkinter.tix.Balloon

一個 氣球,它會彈出一個部件以提供幫助。當用戶將游標移動到綁定了氣球部件的部件內部時,螢幕上會顯示一個帶有描述性訊息的小彈出視窗。

class tkinter.tix.ButtonBox

ButtonBox 部件建立一個按鈕框,例如通常用於 確定 取消

class tkinter.tix.ComboBox

ComboBox 部件類似於 MS Windows 中的組合框控制元件。使用者可以透過在輸入子部件中鍵入或從列表框子部件中選擇來選擇選項。

class tkinter.tix.Control

Control 部件也稱為 SpinBox 部件。使用者可以透過按下兩個箭頭按鈕或直接在輸入框中輸入值來調整值。新值將根據使用者定義的上限和下限進行檢查。

tkinter.tix.LabelEntry

LabelEntry 部件將一個輸入框部件和一個標籤打包成一個大型部件。它可以用來簡化“輸入表單”型別介面的建立。

tkinter.tix.LabelFrame

LabelFrame 部件將一個框架部件和一個標籤打包成一個大型部件。要在 LabelFrame 部件內建立部件,需要相對於 frame 子部件建立新部件,並在 frame 子部件內管理它們。

tkinter.tix.Meter

Meter 部件可用於顯示可能需要很長時間才能執行的後臺作業的進度。

tkinter.tix.OptionMenu

OptionMenu 建立一個選項選單按鈕。

tkinter.tix.PopupMenu

PopupMenu 部件可以用來替代 tk_popup 命令。Tix PopupMenu 部件的優點是它需要更少的應用程式程式碼來操作。

tkinter.tix.Select

Select 部件是按鈕子部件的容器。它可以用來為使用者提供單選按鈕或複選按鈕風格的選擇選項。

tkinter.tix.StdButtonBox

StdButtonBox 部件是一組用於 Motif 風格對話方塊的標準按鈕。

檔案選擇器

tkinter.tix.DirList

DirList 部件顯示一個目錄、其上級目錄及其子目錄的列表檢視。使用者可以選擇列表中顯示的目錄之一,或切換到另一個目錄。

tkinter.tix.DirTree

DirTree 部件顯示一個目錄、其上級目錄及其子目錄的樹形檢視。使用者可以選擇列表中顯示的目錄之一,或切換到另一個目錄。

tkinter.tix.DirSelectDialog

DirSelectDialog 部件在一個對話方塊視窗中顯示檔案系統中的目錄。使用者可以使用此對話方塊視窗瀏覽檔案系統以選擇所需的目錄。

tkinter.tix.DirSelectBox

DirSelectBox 類似於標準的 Motif(TM) 目錄選擇框。它通常用於使用者選擇目錄。DirSelectBox 將最近選擇的目錄儲存到 ComboBox 部件中,以便可以快速再次選擇它們。

tkinter.tix.ExFileSelectBox

ExFileSelectBox 部件通常嵌入在 tixExFileSelectDialog 部件中。它為使用者選擇檔案提供了一種便捷的方法。ExFileSelectBox 部件的樣式與 MS Windows 3.1 上的標準檔案對話方塊非常相似。

tkinter.tix.FileSelectBox

FileSelectBox 類似於標準的 Motif(TM) 檔案選擇框。它通常用於使用者選擇檔案。FileSelectBox 將最近選擇的檔案儲存到 ComboBox 部件中,以便可以快速再次選擇它們。

tkinter.tix.FileEntry

FileEntry 部件可用於輸入檔名。使用者可以手動輸入檔名。或者,使用者可以按下位於輸入框旁邊的按鈕部件,這將彈出一個檔案選擇對話方塊。

分層列表框

tkinter.tix.HList

HList 部件可用於顯示任何具有層次結構的資料,例如檔案系統目錄樹。列表項根據其在層次結構中的位置進行縮排並透過分支線連線。

tkinter.tix.CheckList

CheckList 部件顯示一個供使用者選擇的專案列表。CheckList 的作用類似於 Tk 複選按鈕或單選按鈕部件,但它能夠處理比複選按鈕或單選按鈕多得多的專案。

tkinter.tix.Tree

小部件可以用來以樹的形式顯示分層資料。使用者可以透過開啟或關閉樹的某些部分來調整樹的檢視。

表格列表框

class tkinter.tix.TList

TList 小部件可以用來以表格格式顯示資料。 TList 小部件的列表條目類似於 Tk 列表框小部件中的條目。主要區別在於:(1) TList 小部件可以以二維格式顯示列表條目;(2) 你可以使用圖形影像以及多種顏色和字型來顯示列表條目。

管理器小部件

class tkinter.tix.PanedWindow

PanedWindow 小部件允許使用者互動式地操作多個窗格的大小。窗格可以垂直或水平排列。使用者可以透過拖動兩個窗格之間的調整大小手柄來更改窗格的大小。

class tkinter.tix.ListNoteBook

ListNoteBook 小部件與 TixNoteBook 小部件非常相似:它可以使用筆記本隱喻在有限的空間內顯示多個視窗。筆記本被分成一堆頁面(視窗)。一次只能顯示其中一頁。使用者可以透過在 hlist 子部件中選擇所需頁面的名稱來瀏覽這些頁面。

class tkinter.tix.NoteBook

NoteBook 小部件可以使用筆記本隱喻在有限的空間內顯示多個視窗。筆記本被分成一堆頁面。一次只能顯示其中一頁。使用者可以透過選擇 NoteBook 小部件頂部的視覺化“選項卡”來瀏覽這些頁面。

影像型別

tkinter.tix 模組添加了

  • pixmap 功能到所有 tkinter.tixtkinter 小部件,以從 XPM 檔案建立彩色影像。

  • 複合 影像型別可用於建立由多條水平線組成的影像;每條線都由一系列從左到右排列的專案(文字、點陣圖、影像或空格)組成。例如,複合影像可用於在 Tk Button 小部件中同時顯示點陣圖和文字字串。

其他小部件

class tkinter.tix.InputOnly

InputOnly 小部件用於接受使用者的輸入,這可以透過 bind 命令完成(僅限 Unix)。

表單幾何管理器

此外,tkinter.tix 透過提供以下內容增強了 tkinter

class tkinter.tix.Form

基於所有 Tk 小部件的附加規則的 Form 幾何管理器。

Tix 命令

class tkinter.tix.tixCommand

tix 命令 提供對 Tix 內部狀態和 Tix 應用程式上下文的各種元素的訪問。這些方法操作的大多數資訊都與整個應用程式或螢幕或顯示有關,而不是與特定視窗有關。

要檢視當前設定,常見的用法是

from tkinter import tix
root = tix.Tk()
print(root.tix_configure())
tixCommand.tix_configure(cnf=None, **kw)

查詢或修改 Tix 應用程式上下文的配置選項。如果沒有指定選項,則返回包含所有可用選項的字典。如果指定了選項但沒有值,則該方法返回描述一個已命名選項的列表(如果未指定選項,則此列表將與返回值的相應子列表相同)。如果指定了一個或多個選項-值對,則該方法將修改給定選項以使其具有給定值;在這種情況下,該方法返回一個空字串。選項可以是任何配置選項。

tixCommand.tix_cget(option)

返回由 *option* 給出的配置選項的當前值。選項可以是任何配置選項。

tixCommand.tix_getbitmap(name)

在點陣圖目錄之一中定位名稱為 name.xpmname 的點陣圖檔案(請參閱 tix_addbitmapdir() 方法)。透過使用 tix_getbitmap(),您可以避免在應用程式中對點陣圖檔案的路徑名進行硬編碼。成功後,它會返回點陣圖檔案的完整路徑名,並在前面加上字元 @。返回值可用於配置 Tk 和 Tix 小部件的 bitmap 選項。

tixCommand.tix_addbitmapdir(directory)

Tix 維護一個目錄列表,tix_getimage()tix_getbitmap() 方法將在這些目錄下搜尋影像檔案。標準點陣圖目錄是 $TIX_LIBRARY/bitmapstix_addbitmapdir() 方法將 *directory* 新增到此列表中。透過使用此方法,還可以使用 tix_getimage()tix_getbitmap() 方法定位應用程式的影像檔案。

tixCommand.tix_filedialog([dlgclass])

返回可在該應用程式的不同調用之間共享的檔案選擇對話方塊。此方法將在第一次呼叫時建立一個檔案選擇對話方塊小部件。所有後續對 tix_filedialog() 的呼叫都將返回此對話方塊。可以將可選的 dlgclass 引數作為字串傳遞,以指定所需的檔案選擇對話方塊小部件的型別。可能的選項有 tixFileSelectDialogtixExFileSelectDialog

tixCommand.tix_getimage(self, name)

在其中一個位圖目錄中定位名稱為 name.xpmname.xbmname.ppm 的影像檔案(請參閱上面的 tix_addbitmapdir() 方法)。如果存在多個名稱相同但副檔名不同的檔案,則根據 X 顯示器的深度選擇影像型別:在單色顯示器上選擇 xbm 影像,在彩色顯示器上選擇彩色影像。透過使用 tix_getimage(),您可以避免在應用程式中對影像檔案的路徑名進行硬編碼。成功後,此方法將返回新建立影像的名稱,該名稱可用於配置 Tk 和 Tix 小部件的 image 選項。

tixCommand.tix_option_get(name)

獲取 Tix 方案機制維護的選項。

tixCommand.tix_resetoptions(newScheme, newFontSet[, newScmPrio])

將 Tix 應用程式的方案和字型集分別重置為 *newScheme* 和 *newFontSet*。這僅影響在此呼叫之後建立的小部件。因此,最好在建立 Tix 應用程式中的任何小部件之前呼叫 resetoptions 方法。

可以提供可選引數 *newScmPrio* 來重置 Tix 方案設定的 Tk 選項的優先順序。

由於 Tk 處理 X 選項資料庫的方式,在匯入和初始化 Tix 之後,無法使用 tix_config() 方法重置配色方案和字型集。而必須使用 tix_resetoptions() 方法。