25.3. tkinter.tix
- Tk的扩展小部件¶
tkinter.tix
(Tk接口扩展)模块提供了一组额外的丰富的小部件。虽然标准的Tk库有许多有用的小部件,但它们远远不够完整。tkinter.tix
库提供了标准Tk中缺少的大多数常用窗口小部件:HList
,ComboBox
,Control
SpinBox)和各种可滚动小部件。tkinter.tix
还包括许多通用于广泛应用的小部件:NoteBook
,FileEntry
,PanedWindow
通过所有这些新的小部件,您可以将新的交互技术引入到应用程序中,创建更有用和更直观的用户界面。您可以通过选择最合适的小部件来设计应用程序,以满足应用程序和用户的特殊需求。
也可以看看
- Tix首页
Tix
的主页。包括其他文档和下载的链接。- Tix Man Pages
- 在线版本的手册页和参考资料。
- Tix编程指南
- 在线版本的程序员参考资料。
- Tix开发应用程序
- Tix应用程序开发Tix和Tkinter程序。潮汐应用程序在Tk或Tkinter下工作,并包括TixInspect,用于远程修改和调试Tix / Tk / Tkinter应用程序。
25.3.1. Using Tix¶
- class
tkinter.tix.
Tk
(screenName=None, baseName=None, className='Tix')¶ Tix的顶层小部件,其大部分代表应用程序的主窗口。它有一个相关的Tcl解释器。
tkinter.tix
模块中的类对tkinter
中的类进行子类化。前者导入后者,因此要使用tkinter.tix
与Tkinter,所有你需要做的是导入一个模块。通常,您可以直接导入tkinter.tix
,并用tix.Tk
替换toplevel调用tkinter.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')
如果这失败,您有一个Tk安装问题,在继续之前必须解决。Use the environment variable TIX_LIBRARY
to point to the installed Tix library directory, and make sure you have the dynamic object library (tix8183.dll
or libtix8183.so
) in the same directory that contains your Tk dynamic object library (tk8183.dll
or libtk8183.so
). 具有动态对象库的目录也应该有一个名为pkgIndex.tcl
(区分大小写)的文件,其中包含以下行:
package ifneeded Tix 8.1 [list load "[file join $dir tix8183.dll]" Tix]
25.3.2. Tix Widgets¶
25.3.2.1. Basic Widgets¶
- class
tkinter.tix.
LabelEntry
¶ LabelEntry小部件将一个输入小部件和一个标签封装到一个巨型小部件中。它可以用来简化“entry-form”类型的接口的创建。
- class
tkinter.tix.
LabelFrame
¶ LabelFrame小部件将框架小部件和标签封装到一个巨型小部件中。要在LabelFrame窗口小部件中创建窗口小部件,可以创建相对于
frame
子窗口小部件的新窗口小部件,并在frame
子窗口小部件中管理它们。
- class
tkinter.tix.
OptionMenu
¶ OptionMenu创建一个选项的菜单按钮。
- class
tkinter.tix.
StdButtonBox
¶ StdButtonBox小部件是一组用于Motif式对话框的标准按钮。
25.3.2.2. File Selectors¶
- class
tkinter.tix.
DirSelectDialog
¶ DirSelectDialog小部件在对话框窗口中显示文件系统中的目录。用户可以使用此对话窗口在文件系统中导航以选择所需的目录。
- class
tkinter.tix.
DirSelectBox
¶ DirSelectBox
类似于标准Motif(TM)目录选择框。它通常用于用户选择目录。DirSelectBox将最近选择的目录存储到ComboBox小部件中,以便可以再次快速选择它们。
- class
tkinter.tix.
ExFileSelectBox
¶ ExFileSelectBox小部件通常嵌入在tixExFileSelectDialog小部件中。它为用户提供了一种方便的方法来选择文件。
ExFileSelectBox
小部件的样式与MS Windows 3.1上的标准文件对话框非常相似。
- class
tkinter.tix.
FileSelectBox
¶ FileSelectBox类似于标准Motif(TM)文件选择框。它一般用于用户选择一个文件。FileSelectBox将最近选择的文件存储到
ComboBox
小部件中,以便可以再次快速选择它们。
25.3.2.3. Hierarchical ListBox¶
25.3.2.4. Tabular ListBox¶
25.3.2.5. Manager Widgets¶
- class
tkinter.tix.
PanedWindow
¶ PanedWindow小部件允许用户交互式操作几个窗格的大小。窗格可以垂直或水平布置。用户通过在两个窗格之间拖动调整大小手柄来更改窗格的大小。
- class
tkinter.tix.
ListNoteBook
¶ ListNoteBook小部件与
TixNoteBook
小部件非常相似:它可以用于使用笔记本隐喻在有限的空间中显示多个窗口。笔记本被分成一堆页(窗口)。一次只能显示其中一个页面。用户可以通过在hlist
子窗口小部件中选择所需页面的名称来浏览这些页面。
25.3.2.6. Image Types¶
tkinter.tix
模块添加:
- 对所有
tkinter.tix
和tkinter
小部件的pixmap功能,从XPM文件创建彩色图像。 - 复合图像类型可用于创建由多个水平线组成的图像;每行由从左到右排列的一系列项目(文本,位图,图像或空格)组成。例如,复合图像可以用于在Tk
Button
小部件中同时显示位图和文本字符串。
25.3.2.7. Miscellaneous Widgets¶
25.3.2.8. Form Geometry Manager¶
此外,通过提供以下内容,tkinter.tix
增加tkinter
25.3.3. Tix Commands¶
- 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)¶ 返回由选项给出的配置选项的当前值。选项可以是任何配置选项。
-
tixCommand.
tix_getbitmap
(name)¶ 在其中一个位图目录中找到名为
name.xpm
或name
的位图文件(请参阅tix_addbitmapdir()
方法)。通过使用tix_getbitmap()
,您可以避免对应用程序中位图文件的路径名进行硬编码。成功时,它返回位图文件的完整路径名,前缀为字符@
。返回的值可用于配置Tk和Tix小部件的bitmap
选项。
-
tixCommand.
tix_addbitmapdir
(directory)¶ Tix维护一个目录列表,在该目录下,
tix_getimage()
和tix_getbitmap()
方法将搜索图像文件。标准位图目录为$TIX_LIBRARY/bitmaps
。tix_addbitmapdir()
方法会将目录添加到此列表中。通过使用此方法,还可以使用tix_getimage()
或tix_getbitmap()
方法来定位应用程序的图像文件。
-
tixCommand.
tix_filedialog
([dlgclass])¶ 返回可在此应用程序的不同调用之间共享的文件选择对话框。此方法将在第一次调用时创建文件选择对话框窗口部件。所有后续调用
tix_filedialog()
将返回此对话框。可选的dlgclass参数可以作为字符串传递到指定期望什么类型的文件选择对话框窗口部件。可能的选项为tix
,FileSelectDialog
或tixExFileSelectDialog
。
-
tixCommand.
tix_getimage
(self, name)¶ 在其中一个位图目录中找到名称
name.xpm
,name.xbm
或name.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()
方法。