tkinter控件
目前tkinter在GUI方面主要用的控件有Label、Button、Canvas、messagebox等,具体见下表。
组件 | 作用 |
---|---|
Label | 标签:主要用于显示文本和图像 |
Button | 按钮:用于点击操作 |
Entry | 输入:用于文本输入 |
Text | 文本:可用于显示多行文本 |
Listbox | 列表框:显示列表框文本 |
Radiobutton | 单选按钮:可用于文本选择 (eg:选择题) |
Scale | 范围:数据区间内的进度条 |
Checkbutton | 多选按钮控件:多项选择 |
Canvas | 画布:可用于显示图片或者文本 |
Menu | 菜单:下拉菜单等 |
Frame | 框架:选择区域作为容器 |
messagebox | 弹窗:弹出信息框 |
tkinter位置
方法 | 用法 |
---|---|
pack | 中间位置一直向下添加 |
grid | 网格形式添加 |
place | 给定具体的x和y位置添加 |
官方位置说明如下:
tkinter执行顺序
下图是官方文档中展示的tkinter实际执行情况:导入模型、创建窗口、添加部件、循环执行。
导入模型
#导入模型基本上只用下面语句即可
from tkinter import *
#attention:messagebox弹窗例外,需要你使用下面语句再导入才能使用(可能目前是个bug)
import tkinter.messagebox
创建窗口
window = Tk()#创建窗口
window.geometry('400x400')#设置窗口大小,注意中间为小写X,而不是乘号
window.title('My Window')#给窗口添加标题
主事件循环
window.mainloop()
#销毁窗口语句
window.destroy()
添加部件
1.Label 控件参数详解
Label控件:用于文本和图像显示
Label组件函数:Label(master=None, cnf={}, **kw) 其中,kw参数是用来自定义lable组件的键值对。
#常用参数
master:参数指的是窗口对象
text:静态文本内容
textvariable:动态文本内容,textvariable=str_obj
注意str_obj 必须为tkinter所支持的字符串类型变量,eg:str_obj = StringVar()
使用方法:设置文本内容:str_obj.set('文本内容') 获得文本内容:str_obj.get()
font:字体和大小,font=(font_name,size)
justify:文本对齐方式,justify='center(默认)' or 'left' or 'right'
foreground(fg):文本或图像颜色,值包括'green'等英文名,也可以以RGB形式,如#000000
underline:单个字符添加下划线,underline = index,index是目标字符串中的字符索引值
anchor:位置,可选值为(n,s,w,e,ne,nw,sw,se,center)eswn是东南西北英文的首字母
#宽和高指的是字符个单位,比如height为2表示的是高为两个字符的高度
height:高
width:宽
padx、pady:内容区和边框之间的间隔,单位为像素
bg:背景颜色,值包括'green'等英文名,也可以以RGB形式,如#000000
eg:创建一