在我们平时写代码的时候,为了让程序效果显得更直观,我们通常都会给它们套上一层美丽的外衣,这层外衣便是-------GUI,中文名又叫,图形用户接口,能起到很好的交互作用。下面我们来着重介绍下Python中自带的GUI模块-----tkinter,看看它有哪些丰富的图形接口吧。
1.安装并导入
哦,tkinter库系统自带,无需安装,直接导入即可:
import tkinter as tk # 因为它比较长,所以给它个简写的方式 ,用tk代表它。
2.实例化窗口
root= tk.Tk() #主窗口
root.title('hello') #窗口标题
root.geometry('400x500') #窗口尺寸
root.wm_minsize(140, 170) # 设置窗口最小化大小
root.wm_maxsize(1440, 2800) # 设置窗口最大化大小
root.iconbitmap('1.ico') #窗口图标 必须是ico格式的图片
root.resizable(width=False, height=True) # 设置窗口宽度不可变,高度可变
root.mainloop() #主窗口循环显示
我们的第一个窗口就这样应运而生了,另外它还有许多其它功能,比如:
root.quit() #退出
root.destroy() #销毁
root.update() #刷新 可以接收用户改变程序进程
root.update_idletasks() #刷新 不能接收用户改变程序进程
root.wm_title('i love you') #最小化显示字样
root.configure(background='blue') #背景颜色
下面我们再给它添加点别的部件和功能吧。
3.基本部件
tkinter里面有很多丰富的部件,有标签,文本框,列表框,下拉列表框,多选框,单选框等等,下面我们一起认识下它们吧。
一、标签
它是tkinter里面的标签部件,主要用于提示。那么它有哪些有趣的功能呢?一起看一下:
label=tk.Label(root,
text='Hello', #标签内文本
bg='red', #背景颜色
font=('Arial',20), #字体和字体大小
width=10, #文本宽度
height=5 #文本高度
)
不过我们光这样标签还不会添加到我们的主界面中,还得给它进行下一步操作:
label.pack() #添加部件到主界面
下面看下效果:
这样我们就成功将它添加进来了,有点丑,等会我们再做修改。大家可以看到现在的标签里的值是静态无法修改的,那要是我们想让它动态变更了,那我们可以这样做:
这样就达到了修改标签的值的功能。
关于标签还有许多优秀的方法,比如说:
label.configure(text) #重新设置标签文本 得是text的时候设置才生效
label.configure(background='blue') #重新设置标签背景
标签的属性总共有下面几种:
anchor 文本位置;
background(bg) 背景色;
foreground(fg) 前景色;
borderwidth(bd) 边框宽度;
width 标签宽度;
height 标签高度;
bitmap 标签中的位图;
font 字体;
image 标签中的图片;
justify 多行文本的对齐方式;
text 标签中的文本,可以使用'\n'表示换行
textvariable 显示文本自动更新,与StringVar等配合着用
二、按钮
按钮的功能主要是实现点击功能,比如说确认,提交操作。那么它有哪些操作呢?
可以看出,成功实现了点击事件,而且我们可以通过点击按钮来改变标签的值,下面来看看:
可以看出,成功的改变了值和背景颜色。大家可能对上图中的side='left'有点不理解,其实那个就是确定组件位置的,一个左一个右。按钮还有一个隐藏和显示的功能也是相当好实现的:
button.pack #显示
button.pack_forget #隐藏
关于button还有以下方法供大家学习:
anchor 文本位置; background(bg) 按钮的背景色; bitmap: 按钮上显示的位图; borderwidth(bd) 按钮边框的宽度; command: 按钮消息