Tkinter编程
- Tkinter:python中标准的GUI库,python可以使用Tkinter快速创建GUI应用
- GUI:图形用户界面(Graphical User Interface,简称GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。
- Tkinter是内置于python的安装包中,只需安装好Python之后就可以使用Tkinter库(python安装过程)
- 应用方式:import tkinter
Tkinter 组件
Tkinter提供了各种控件,一个GUI应用程序中使用,这些控件通常被称为控件或部件。以下是几种Tkinter部件及简单简介
控件 |
简介 |
Button |
按钮控件,显示按钮 |
Canvas |
画布控件,显示图形元素(线条,文本等) |
Entry |
输入控件,显示简单的文本内容 |
Checkbutton |
多选框,提供多项选择 |
Frame |
框架控件,一个矩形区域,作为容器 |
Label |
标签控件,显示文本和位图 |
Listbox |
列表框控件,显示一个字符串列表给用户 |
Menubutton |
菜单按钮控件,显示菜单项 |
Menu |
菜单控件,显示菜单栏,下拉菜单和弹出菜单 |
Message |
消息控件,显示多行文本,类似于label |
Radiobutton |
单选按钮控件,显示一个单选的按钮 |
Scale |
范围控件,显示一个数值刻度,为输出限定范围的数组区间 |
Scrollbar |
滚动条控件,当内容超过可视化区域是使用 |
Text |
文件控件,显示多行文本 |
Toplevel |
容器控件,显示一个单独对话框,类似于Frame |
Spinbox |
输入控件,于Entry类似,但可以输入指定范围值 |
PanedWindow |
一个窗口布局管理插件,可以包含一个或多个子控件 |
LabelFrame |
一个简单的容器控件,常用与复杂的窗口布局 |
tkMessageBox |
显示应用程序的消息框 |
Button组件
- 语法格式:w = Button(master,option=value,…)
- msater:按钮的父容器
- option:可选项,按钮可以设置的属性,可以用 键= 值的格式来设置,并用逗号分隔。
可选项 |
描述 |
activebackground |
鼠标悬停变色(背景色) |
activeforeground |
鼠标悬停变色(前景色) |
bd |
按钮边框大小,默认两个像素 |
bg |
按钮背景色 |
command |
点击按钮时,执行该函数 |
fg |
按钮的前景色 |
font |
文本字体 |
height |
按钮高度 |
highlightcolor |
高亮的颜色 |
image |
按钮要显示的图片 |
justify |
显示多行文本的时候,设置不同行之间的对齐方式 |
padx |
按钮的内容与按钮边缘的距离 |
pady |
按钮在y轴方向上的内边距 |
relief |
边框样式,设置3D效果 |
state |
设置按钮组件状态 |
underline |
下划线,默认不带 |
width |
按钮的宽度,未设置以适应按钮的内容 |
wraplength |
限制按钮每行显示的字符的数量 |
text |
按钮的文本内容 |
anchor |
锚选项,控制文本的位置,默认中心 |
案例
import tkinter as tk
win = tk.Tk()
win.geometry("800x800")
def button():
lab = tk.Label(win, text="人生苦短,我用python", bg="red", height=10, width=40)
lab.pack()
but = tk.Button(win, text="按钮", command=button, width=10, height=5)
but.pack()
win.mainloop()
点击前 :
点击后(点击一次,又一次):
Label组件
- 标签控件(Label)指定窗口中显示的文本和图像
- 语法格式:w = Label(master,option,… )
- master:框架的父容器
- options:可选项,即该标签的可设置的属性,用键-值的方式设置,以逗号分隔
可选项 |
简介 |
anchor |
文本或图像的位置,默认center(居中) |
bd |
按钮边框大小,默认两个像素 |
bg |
按钮背景色 |
bitmap |
指定标签上的位图,如为图片则忽略 |
cursor |
鼠标移动标签时,光标的形状(arrow,circle,cross,plus) |
fg |
按钮的前景色 |
font |
文本字体 |
height |
按钮高度 |
image |
按钮要显示的图片 |
justify |
显示多行文本的时候,设置不同行之间的对齐方式 |
padx |
按钮的内容与按钮边缘的距离 |
pady |
按钮在y轴方向上的内边距 |
relief |
边框样式,设置3D效果 |
underline |
下划线,默认不带 |
underline |
下划线,默认不带 |
width |
按钮的宽度,未设置以适应按钮的内容 |
wraplength |
设置标签文本显示多少行,默认为0 |
import tkinter as tk
win = tk.Tk()
win.geometry("800x800")
w = tk.Label(win, text="人生苦短,我用python", bg="red", width=10, height=5)
w.pack()
win.mainloop()
结果