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 多个。

使用所有这些新的小部件,您可以将新的交互技术引入应用程序,从而创建更有用和更直观的用户界面。您可以pass选择最合适的小部件来设计应用程序,以满足您的应用程序和用户的特殊需求。

See also

  • Tix Homepage

  • Tix的主页。这包括其他文档和下载的链接。

  • Tix 手册页

  • 手册页和参考资料的在线版本。

  • Tix 编程指南

  • 程序员参考资料的在线版本。

  • Tix 开发应用

  • 用于开发 Tix 和 Tkinter 程序的 Tix 应用程序。潮汐应用程序可以在 Tk 或 Tkinter 下运行,并包括 TixInspect ,它是一个检查器,可以远程修改和调试 Tix/Tk/Tkinter 应用程序。

Using Tix

    • class * tkinter.tix. Tk(* screenName = None baseName = None className ='Tix'*)
    • Tix 的顶级小部件,主要表示应用程序的主窗口。它具有关联的 Tcl 解释器。

tkinter.tix模块中的类将tkinter中的类子类化。前者导入后者,因此要在 Tkinter 中使用tkinter.tix,您要做的就是导入一个模块。通常,您只需导入tkinter.tix,然后将tkinter.Tk的顶级调用替换为tix.Tk

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

要使用tkinter.tix,通常必须与 Tk 小部件一起安装 Tix 小部件。要测试您的安装,请try以下操作:

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

Tix Widgets

Tixtkinter曲目库介绍了 40 多个小部件类。

Basic Widgets

  • 类别 tkinter.tix. Balloon

    • 弹出窗口Balloon的窗口以提供帮助。当用户将光标移动到绑定有 Balloon 控件的控件内部时,屏幕上会显示一个带有描述性消息的小弹出窗口。
  • 类别 tkinter.tix. ButtonBox

    • ButtonBox小部件创建一个按钮框,例如Ok Cancel常用的按钮。
  • 类别 tkinter.tix. ComboBox

    • ComboBox小部件类似于 MS Windows 中的组合框控件。用户可以pass Importing 条目子小部件或从列表框子小部件中进行选择来选择一个选项。
  • 类别 tkinter.tix. Control

    • Control小部件也称为SpinBox小部件。用户可以pass按下两个箭头按钮或直接在条目中 Importing 值来调整值。将根据用户定义的上限和下限检查新值。
  • 类别 tkinter.tix. LabelEntry

    • LabelEntry小部件将一个 Importing 小部件和一个标签打包到一个大型小部件中。它可以用来简化“条目形式”类型接口的创建。
  • 类别 tkinter.tix. LabelFrame

    • LabelFrame小部件将框架小部件和标签打包到一个大型小部件中。要在 LabelFrame 小部件内创建小部件,请相对于frame子小部件创建新的小部件,并在frame子小部件内进行 Management。
  • 类别 tkinter.tix. Meter

    • Meter小部件可用于显示后台作业的进度,该进度可能需要很长时间才能执行。
  • 类别 tkinter.tix. OptionMenu

  • 类别 tkinter.tix. PopupMenu

    • PopupMenu小部件可以替代tk_popup命令。 Tix PopupMenu小部件的优点是它需要较少的应用程序代码来进行操作。
  • 类别 tkinter.tix. Select

    • Select小部件是按钮子小部件的容器。它可用于为用户提供选择选项的单选框或复选框样式。
  • 类别 tkinter.tix. StdButtonBox

    • StdButtonBox小部件是用于类似 Motif 对话框的一组标准按钮。

File Selectors

  • 类别 tkinter.tix. DirList

    • DirList小部件显示目录,其先前目录及其子目录的列表视图。用户可以选择列表中显示的目录之一,也可以切换到另一个目录。
  • 类别 tkinter.tix. DirTree

    • DirTree小部件显示目录,其先前目录及其子目录的树视图。用户可以选择列表中显示的目录之一,也可以切换到另一个目录。
  • 类别 tkinter.tix. DirSelectDialog

    • DirSelectDialog小部件在对话框窗口中显示文件系统中的目录。用户可以使用此对话框窗口浏览文件系统以选择所需的目录。
  • 类别 tkinter.tix. DirSelectBox

    • DirSelectBox与标准 Motif™目录选择框相似。通常用于用户选择目录。 DirSelectBox 将最近选择的目录存储到 ComboBox 小部件中,以便可以再次快速选择它们。
  • 类别 tkinter.tix. ExFileSelectBox

    • ExFileSelectBox小部件通常嵌入在 tixExFileSelectDialog 小部件中。它为用户提供了一种选择文件的便捷方法。 ExFileSelectBox小部件的样式与 MS Windows 3.1 上的标准文件对话框非常相似。
  • 类别 tkinter.tix. FileSelectBox

    • FileSelectBox与标准 Motif™文件选择框相似。通常用于用户选择文件。 FileSelectBox 将最近选择的文件存储到ComboBox小部件中,以便可以再次快速选择它们。
  • 类别 tkinter.tix. FileEntry

    • FileEntry小部件可用于 Importing 文件名。用户可以手动 Importing 文件名。或者,用户可以按下条目旁边的按钮小部件,这将弹出一个文件选择对话框。

Hierarchical ListBox

  • 类别 tkinter.tix. HList

    • HList小部件可用于显示具有分层结构的任何数据,例如文件系统目录树。列表条目根据其在层次结构中的位置缩进并pass分支线连接。
  • 类别 tkinter.tix. CheckList

    • CheckList小部件显示用户要选择的项目列表。 CheckList 的行为类似于 Tk 的 checkbutton 或 radiobutton 窗口小部件,不同之处在于它能够处理比 checkbutton 或 radiobutton 更多的项目。
  • 类别 tkinter.tix. Tree

    • Tree小部件可用于以树形式显示层次结构数据。用户可以pass打开或关闭树的部分来调整树的视图。

Tabular ListBox

  • 类别 tkinter.tix. TList
    • TList小部件可用于以表格格式显示数据。 TList小部件的列表条目与 Tk 列表框小部件中的条目相似。主要区别在于(1)TList小部件可以以二维格式显示列表条目,并且(2)您可以使用图形图像以及列表条目的多种颜色和字体。

Manager Widgets

  • 类别 tkinter.tix. PanedWindow

    • PanedWindow小部件允许用户交互地操纵几个窗格的大小。窗格可以垂直或水平排列。用户pass在两个窗格之间拖动调整大小手柄来更改窗格的大小。
  • 类别 tkinter.tix. ListNoteBook

    • ListNoteBook小部件与TixNoteBook小部件非常相似:可以使用笔记本隐喻在有限的空间中显示许多窗口。笔记本分为页面(窗口)堆栈。一次只能显示这些页面之一。用户可以pass在hlist子小部件中选择所需页面的名称来浏览这些页面。
  • 类别 tkinter.tix. NoteBook

    • NoteBook小部件可用于pass笔记本隐喻在有限的空间中显示许多窗口。笔记本分为一堆页面。一次只能显示这些页面之一。用户可以pass选择“笔记本”小部件顶部的可视“选项卡”来浏览这些页面。

Image Types

tkinter.tix模块添加:

  • 所有tkinter.tixtkinter小部件具有pixmapFunction,可从 XPM 文件创建彩色图像。

  • Compound图片类型可用于创建由多条水平线组成的图片;每行由从左到右排列的一系列项目(文本,位图,图像或空格)组成。例如,复合图像可用于在 Tk Button小部件中同时显示位图和文本字符串。

Miscellaneous Widgets

  • 类别 tkinter.tix. InputOnly
    • InputOnly小部件将接受来自用户的 Importing,可以使用bind命令(仅限 Unix)完成。

表单几何 Management 器

此外,tkinter.tixpass提供以下内容来增强tkinter

  • 类别 tkinter.tix. Form
    • Form几何 Management 器基于所有 Tk 小部件的附件规则。

Tix Commands

  • 类别 tkinter.tix. tixCommand
    • tix commands提供对Tix的内部状态和Tix应用程序上下文的其他元素的访问。这些方法操纵的大多数信息都与整个应用程序有关,或者与屏幕或显示器有关,而不是与特定窗口有关。

要查看当前设置,常见用法是:

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

    • 查询或修改 Tix 应用程序上下文的配置选项。如果未指定选项,则返回字典所有可用选项。如果指定的 option 没有值,则该方法返回一个描述一个命名选项的列表(如果未指定 option,则该列表与返回值的相应子列表相同)。如果指定了一个或多个选项-值对,则该方法会将给定的选项修改为具有给定的值;在这种情况下,该方法返回一个空字符串。选项可以是任何配置选项。
  • tixCommand. tix_cget(* option *)

    • 返回由* option *给出的配置选项的当前值。选项可以是任何配置选项。
  • tixCommand. tix_getbitmap(* name *)

    • 在一个位图目录中找到名称为name.xpmname的位图文件(请参见tix_addbitmapdir()方法)。pass使用tix_getbitmap(),可以避免在应用程序中对位图文件的路径名进行硬编码。成功后,它将返回位图文件的完整路径名,并以字符@为前缀。返回的值可用于配置 Tk 和 Tix 小部件的bitmap选项。
  • tixCommand. tix_addbitmapdir(目录)

  • tixCommand. tix_filedialog([* dlgclass *])

    • 返回可以在此应用程序的不同调用之间共享的文件选择对话框。首次调用时,此方法将创建一个文件选择对话框窗口小部件。随后所有对tix_filedialog()的调用将返回此对话框。可以将可选的 dlgclass 参数作为字符串传递,以指定所需的文件选择对话框窗口小部件类型。可能的选项是tixFileSelectDialogtixExFileSelectDialog
  • tixCommand. tix_getimage(* self name *)

    • 在一个位图目录中找到名称为name.xpmname.xbmname.ppm的图像文件(请参见上面的tix_addbitmapdir()方法)。如果存在多个具有相同名称(但 extensions 不同)的文件,则根据 X 显示器的深度选择图像类型:在单色显示器上选择 xbm 图像,在彩色显示器上选择彩色图像。pass使用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()方法。