基于Tk的应用程序的基本组件称为窗口小部件.组件有时也称为窗口,因为在Tk中,"窗口"和"窗口小部件"通常可互换使用. Tk是一个包,它提供了一组丰富的图形组件,用于使用Tcl创建图形应用程序.
Tk提供了一系列小部件,从按钮和菜单等基本GUI小部件到数据显示小部件.小部件是非常可配置的,因为它们具有默认配置,使它们易于使用.
Tk应用程序遵循小部件层次结构,其中任何数量的小部件可以放置在另一个小部件中,而那些小部件可以放在另一个小部件中小部件. Tk程序中的主要窗口小部件称为根窗口小部件,可以通过创建TkRoot类的新实例来创建.
下面给出了创建小部件的语法.
type variableName arguments options
此处的类型指的是小部件类型,如按钮,标签等.参数可以是可选的,并且需要基于每个小部件的单独语法.选项范围从大小到每个组件的格式.
小组件使用类似于命名包的结构.在Tk中,根窗口以句点(.)和窗口中的元素命名,例如按钮名为.myButton1.变量名称应以小写字母,数字或标点符号开头(句点除外).在第一个字符之后,其他字符可以是大写或小写字母,数字或标点符号(句点除外).建议使用小写字母开始标签.
可以使用红色,绿色等名称声明颜色,等等.它也可以用#表示十六进制.十六进制数字的数量可以是3个,6个,9个或12个.
默认单位是像素,在以下情况下使用我们没有指定维度.其他尺寸是i表示英寸,m表示毫米,c表示厘米,p表示点数.
有很多常见选项适用于所有小部件,它们列在下表和减号中;
Sr.No. | 语法&说明 |
---|---|
1 | -background color 用于设置小部件的背景颜色. |
2 | -borderwidth width 用于绘制在3D效果中使用边框. |
3 | -font fontDescriptor 用于设置小部件的字体. |
4 | -foreground color 用于设置小部件的前景色. |
5 | -height number 用于设置小部件的高度. |
6 | -highlightbackground color 当窗口小部件没有输入焦点时,用于设置颜色矩形以在窗口小部件周围绘制. |
7 | -highlightcolor color 当窗口小部件具有输入焦点时,用于设置颜色矩形以在窗口小部件周围绘制. |
8 | -padx number 设置小工具的padx. |
9 | -pady number 设置小部件的pady. |
10 | -relief condition 设置此小部件的3D浮雕.条件可能会升高,凹陷,平坦,隆起,凹陷或凹陷. |
11 | -text text 设置小部件的文本. |
12 | -textvariable varName 与窗口小部件关联的变量.当widget的文本发生变化时,该变量设置为widget的文本. |
13 | -width number 设置小部件的宽度. |
选项的一个简单示例如下所示.
#!/usr/bin/wish grid [label .myLabel -background red -text "Hello World" -relief ridge -borderwidth 3] -padx 100 -pady 100
当我们运行上述程序时,我们将获得以下输出.
可用小部件列表分类如下 :
Sr.No. | Widget&说明 |
---|---|
1 | Label 用于显示单行文字的小工具. |
2 | Button 可点击的小工具并触发行动. |
3 | Entry 用于接受单行文本作为输入的小部件. |
4 | Message 用于显示多行文本的小部件. |
5 | Text 用于显示和选择编辑多行文字的小工具. |
6 | Toplevel 窗口管理器提供所有边框和装饰的窗口. |
Sr.No. | Widget&说明 |
---|---|
1 | Frame 用于容纳其他小部件的容器小部件. |
2 | Place 小工具在特定位置保存其他小部件坐标的原点和确切大小. |
3 | Pack 在将小部件放入父窗口小部件之前,用于组织小部件的简单窗口小部件. |
4 | Grid 嵌套小部件的小工具包装在不同的方向. |
Sr.No. | 小工具&说明 |
---|---|
1 | Radiobutton 具有一组开/关按钮和标签的小工具,其中一个可以被选中. |
2 | Checkbutton 具有一组开/关按钮和标签的小工具,其中许多可以被选中.. |
3 | Menu 作为持有人的小工具对于菜单项. |
4 | Listbox 显示单元格列表的小组件,可以选择其中的一个或多个. |
Sr.No. | Widget&说明 |
---|---|
1 | Dialog 用于显示对话框的小工具. |
2 | Spinbox 允许用户选择数字的小工具. |
3 | Combobox 将条目与可供选择的列表组合使用的小工具. |
4 | Notebook 选项卡式窗口小部件,有助于使用索引选项卡在多个页面之一之间切换. |
5 | Progressbar 为长时间操作的进度提供视觉反馈的小工具喜欢文件上传. |
6 | Treeview 显示小部件并允许浏览更多形式的项目层次结构树. |
7 | Scrollbar 滚动小部件而不使用文本或画布小部件. |
8 | Scale 比例小部件通过滑块选择数值. |
Sr.No. | 小工具&说明 |
---|---|
1 | Canvas 用于显示图形和图像的绘图小部件.. |
我们将在接下来的章节中介绍这些小部件.