
@TOC
看过前面的图片脚本篇是不是对图形化界面略微感兴趣了?这篇文章就来讲一下python中tkinter库的使用。
Tkinter是Python的标准GUI(图形用户界面)工具包,它允许开发者使用Python编程语言来创建窗口、按钮、文本框等图形元素,进而构建出功能丰富的桌面应用程序。
一个图形用户界面由各种组件组成的,它的个性化设置就需要一下组件的方法和属性以及布局进行设置。下面先总的看一下各种组件,组件的标准属性和布局方法。后续会依次对这些控件,属性以及布局方法进行详细的介绍。
| 组件 | 描述 | 
| Label | 标签控件;可以显示文本和位图 | 
| Message | 消息控件;用来显示多行文本,与label比较类似 | 
| Text | 文本控件;用于显示多行文本 | 
| Button | 按钮控件;在程序中显示按钮。 | 
| Radiobutton | 单选按钮控件;显示一个单选的按钮状态 | 
| Checkbutton | 多选框控件;用于在程序中提供多项选择框 | 
| Entry | 输入控件;用于显示简单的文本内容 | 
| Spinbox | 输入控件;与Entry类似,但是可以指定输入范围值 | 
| Menubutton | 菜单按钮控件,用于显示菜单项。 | 
| Menu | 菜单控件;显示菜单栏,下拉菜单和弹出菜单 | 
| Canvas | 画布控件;显示图形元素如线条或文本 | 
| Frame | 框架控件;在屏幕上显示一个矩形区域,多用来作为容器 | 
| Toplevel | 容器控件;用来提供一个单独的对话框,和Frame比较类似 | 
| Scale | 范围控件;显示一个数值刻度,为输出限定范围的数字区间 | 
| Scrollbar | 滚动条控件,当内容超过可视化区域时使用,如列表框。. | 
| Listbox | 列表框控件;在Listbox窗口小部件是用来显示一个字符串列表给用户 | 
| PanedWindow | PanedWindow是一个窗口布局管理的插件,可以包含一个或者多个子控件。 | 
| LabelFrame | labelframe 是一个简单的容器控件。常用于复杂的窗口布局。 | 
| tkMessageBox | 用于显示你应用程序的消息框。 | 
每个控件都有着各自不同的功能,即使有些控件功能相似,但它们的适用场景也不同。所有控件既有相同属性,也有各自独有的属性。本节内容,先对这些控件的共用属性做简单介绍,如下表所示:
| 属性 | 描述 | 
| text | 标题文字 | 
| font | 控件字体 | 
| width/height | 控件的宽度/高度 | 
| padx/pady | 控件内的文字或图片与控件边框之间的水平/垂直距离 | 
| command | 该参数用于执行事件函数 | 
| borderwidth | 控件边框宽度 | 
| color | 控件颜色 | 
| bg | 背景颜色 | 
| fg | 字体颜色 | 
| image | 定义显示在控件内的图片文件 | 
| anchor | 锚点;定义控件或者文字信息在窗口内的位置 | 
| relief | 定义控件边框样式; | 
| bitmap | 位图; | 
| cursor | 光标;鼠标移动到控件上,定义鼠标指针的类型 | 
在Tkinter中,管理布局的有三种方法:pack()、grid()和place()。这三种方法各有特点,适用于不同的布局需求。
| 几何方法 | 描述 | 
| pack() | 包装; | 
| grid() | 网格; | 
| place() | 位置; | 
每一个tkinter程序,至少包含以下两个部分:

优秀是一种习惯!
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。