Tix
Tix - Tk的扩展部件
TIX(Tk接口扩展)模块提供了一组额外的小部件。 尽管标准Tk库有许多有用的小部件,但它们还远远没有完成。 Tix库提供了大多数标准Tk缺失的常用小部件:HList,ComboBox,Control(a.k.a.SpinBox)和各种可滚动小部件。 Tix还包含更多的小部件,这些小部件通常适用于各种应用程序:NoteBook,FileEntry,PanedWindow等; 其中有40多个。
使用所有这些新的小部件,您可以将新的交互技术引入到应用程序中,创建更有用且更直观的用户界面。您可以通过选择最合适的小部件来设计您的应用程序,以满足应用程序和用户的特殊需求。
注意
Tix已在Python 3中重命名为tkinter.tix。当将源代码转换为Python 3时,2to3工具将自动适应导入。
扩展内容
Tix Homepage Tix的主页。 这包括指向其他文档和下载的链接。 Tix Man Pages手册页和参考资料的在线版本。 Tix编程指南程序员参考资料的在线版本。 Tix开发应用程序用于开发Tix和Tkinter程序的Tix应用程序。 潮汐应用程序在Tk或Tkinter下工作,并包含TixInspect,一名检查员可远程修改和调试Tix / Tk / Tkinter应用程序。
1.使用Tix
class Tix.Tix(screenName[, baseName[, className]])
Tix的Toplevel小部件主要代表应用程序的主窗口。它有一个关联的Tcl解释器。
Tix模块中的类将Tkinter模块中的类子类化。 前者导入后者,因此要将Tix与Tkinter一起使用,您只需导入一个模块。 一般情况下,您可以只导入Tix,并用Tix.Tk替换Tkinter.Tk的顶层调用:
import Tix
from Tkconstants import *
root = Tix.Tk()
要使用Tix,您必须安装Tix小部件,通常与安装Tk小部件一起安装。 要测试您的安装,请尝试以下操作:
import Tix
root = Tix.Tk()
root.tk.eval('package require Tix')
如果失败了,那么您的Tk安装问题必须在继续之前解决。 使用环境变量TIX_LIBRARY指向已安装的Tix库目录,并确保在包含Tk动态对象库(tk8183.dll或libtk8183)的同一目录中具有动态对象库(tix8183.dll或libtix8183.so)。 所以)。 具有动态对象库的目录还应该有一个名为pkgIndex.tcl(区分大小写)的文件,其中包含以下行:
package ifneeded Tix 8.1 [list load "[file join $dir tix8183.dll]" Tix]
2. Tix Widgets
Tix
为Tkinter
剧目引入了40多个小部件类。演示了标准分发目录中的所有Tix
小部件Demo/tix
。
2.1 基本Widgets
class Tix.Balloon
一个Ballon,超过一个部件弹出提供帮助。当用户将光标移动到已绑定了气球窗口小部件的窗口小部件中时,屏幕上将显示一个带有描述性消息的小型弹出式窗口。
class Tix.ButtonBox
所述ButtonBox插件创建按钮的框,诸如通常用于Ok Cancel
。
class Tix.ComboBox
该组合框控件类似于MS Windows中的组合框控件。用户可以通过键入条目子组件或从列表框子选择组件来选择一个选项。
class Tix.Control
该控制窗口小部件也被称为SpinBox
窗口小部件。用户可以通过按两个箭头按钮或直接在输入中输入数值来调整数值。新值将根据用户定义的上限和下限进行检查。
class Tix.LabelEntry
该LabelEntry部件包的入口小部件和一个标签为一体的大型部件。它可以用来简化“输入表单”类型界面的创建。
class Tix.LabelFrame
LabelFrame小部件将一个框架小部件和一个标签打包成一个大型小部件。 要在LabelFrame小部件中创建小部件,需要创建相对于小部件框架的新小部件,并在小部件框架内管理小部件。
class Tix.Meter
该Meter控件可以用来显示后台作业可能需要很长的时间来执行进度。
class Tix.OptionMenu
该OptionMenu创建一个选项菜单按钮。
class Tix.PopupMenu
该PopupMenu
的插件可被用作一个替换的tk_popup
命令。Tix
PopupMenu
小部件的优点是它需要较少的应用程序代码来操作。
class Tix.Select
选择控件是按钮subwidgets的容器。它可以用来为用户提供无线电盒或复选框式的选择选项。
class Tix.StdButtonBox
所述StdButtonBox插件是一组用于基序状对话框标准按钮。
2.2 文件选择器
class Tix.DirList
该DirList插件播放目录,原有的目录和子目录的列表视图。用户可以选择列表中显示的目录之一或更改为其他目录。
class Tix.DirTree
该DirTree插件播放目录,原有的目录和子目录的树视图。用户可以选择列表中显示的目录之一或更改为其他目录。
class Tix.DirSelectDialog
该DirSelectDialog控件呈现在对话窗口中的文件系统的目录。用户可以使用此对话窗口浏览文件系统以选择所需的目录。
class Tix.DirSelectBox
这DirSelectBox
与标准的Motif(TM)目录选择框类似。它通常用于用户选择一个目录。DirSelectBox
将最近选定的目录存储到ComboBox小部件中,以便可以再次快速选择它们。
class Tix.ExFileSelectBox
该ExFileSelectBox
部件通常嵌入在tixExFileSelectDialog部件。它为用户选择文件提供了一个便利的方法。ExFileSelectBox
小部件的样式与MS Windows 3.1上的标准文件对话框非常相似。
class Tix.FileSelectBox
所述FileSelectBox是类似于标准基序(TM)文件选择框。它通常用于用户选择文件。FileSelectBox将大多数最近选择的文件存储到ComboBox
小部件中,以便可以再次快速选择它们。
class Tix.FileEntry
该FileEntry的插件可被用于输入一个文件名。用户可以手动键入文件名。或者,用户可以按下位于该条目旁边的按钮小部件,这将弹出一个文件选择对话框。
2.3 分层列表框
class Tix.HList
所述HList插件可以用于显示具有分级结构的任何数据,例如,文件系统的目录树。这些列表条目是缩进的,并通过分支线根据它们在层次结构中的位置进行连接。
class Tix.CheckList
该CheckList插件播放由用户选择的项目的列表。CheckList与Tk checkbutton或radiobutton小部件类似,除了它能够处理比checkbutton或radiobutton更多的项目。
class Tix.Tree
该Tree插件可用于以树的形式显示的阶层数据。用户可以通过打开或关闭部分树来调整树的视图。
2.4 表格列表框
class Tix.TList
TList小部件可用于以表格格式显示数据。 TList小部件的列表条目与Tk列表框小部件中的条目类似。 主要区别在于:(1)TList小部件可以以二维格式显示列表条目;(2)可以使用图形图像以及列表条目的多种颜色和字体。
2.5 管理部件
class Tix.PanedWindow
该PanedWindow插件允许用户以交互方式操纵几个窗格的大小。窗格可以垂直或水平排列。用户通过在两个窗格之间拖动调整大小手柄来更改窗格的大小。
class Tix.ListNoteBook
该ListNoteBook小部件是非常相似的TixNoteBook
小工具:它可以用来在使用笔记本的比喻有限的空间来显示多个窗口。笔记本被分成一堆页面(窗口)。一次只能显示其中的一个页面。用户可以通过在子hlist
小组件中选择所需页面的名称来浏览这些页面。
class Tix.NoteBook
该Notebook插件可用于在使用笔记本比喻的有限空间来显示多个窗口。笔记本被分成一堆页面。一次只能显示其中的一个页面。用户可以通过选择NoteBook小部件顶部的可视“标签”浏览这些页面。
2.6 图像类型
该Tix
模块增加了:
- 所有图像映射功能
Tix
和Tkinter
小部件可以从XPM文件创建彩色图像。
- 复合图像类型可用于创建由多条水平线组成的图像; 每行由从左到右排列的一系列项目(文本,位图,图像或空间)组成。 例如,可以使用复合图像在Tk Button小部件中同时显示位图和文本字符串。
2.7 杂项小部件
class Tix.InputOnly
InputOnly窗口小部件是接受来自用户的,其可以与完成的输入bind
命令(仅限Unix)。
2.8 表格几何管理器
另外,Tix通过提供以下内容来补充Tkinter:
class Tix.Form
该表几何管理系统基于对所有Tk组件连接的规则。
3. TIX命令
class Tix.tixCommand
tix命令提供对Tix内部状态和Tix应用程序上下文的各种元素的访问。 这些方法操纵的大多数信息都与应用程序的整体或屏幕或显示有关,而不是与特定的窗口有关。
要查看当前设置,常见用法是:
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或名称的位图文件(请参阅tix_addbitmapdir()方法)。 通过使用tix_getbitmap(),可以避免在应用程序中硬编码位图文件的路径名。 成功时,它将返回位图文件的完整路径名,前缀为字符@。 返回值可用于配置Tk和Tix小部件的位图选项。
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小部件的图像选项。
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()方法。