GUI 的全称是 Graphical User Interface ,即图形用户界面。本文首要任务是介绍Python默认的图形界面开发工具tkinter的用法。虽然说tkinter不是GUI编程中最好的工具,但是tkinter用起来十分简单,著名的IDLE就是tkinter开发出来的。
一. 安装 tkinter
因tkinter是python自带的GUI开发工具,所以不需要安装tkinter
二. 利用tkinter开发GUI的基本步骤
(1). 导入tkinter模块;
(2). 通过导入的模块建立Tk类的实例(后面会详细描述),此时会创建窗口对象;
(3). 通过title方法设置窗口的标题,通过geometry方法尺寸和位置等参数;
(4). 创建控件类的实例,显示控件;
(5). 建立主逻辑类,通过mainloop函数进入循环。
三. 利用tkinter编写GUI的最小框架
下文将编写一个tkinter创建窗口的最小代码,以让大家了解GUI开发的第一步:创建主窗口。
运行的结果:
这里对上面的代码作详细的说明:
四 . 控件
这个窗口空空如也,里面什么都没用,我相信你是不会喜欢这个界面的。现在叫我们向里面添加一些控件。
Label类所创建的实例是一个标签,如下:
其中的文字部分就是一个标签,我们可以设置这个标签中文字的内容,字体,字号和颜色等一系列的参数,具体的参数如下表:
(1). text : 用来设置文字的内容;
(2).fg: 文字的颜色;
(3). bg: 文字的背景色;
(4).font:设置字体和字号;
(5). width和height:设置标签的宽度和高度.
这里写一个简单的语法: label = tkinter.Label(mainWindow,text = '内容', fg = '颜色',bg = '颜色', font=('字体',12),width = 50,height = 1)
这里接着上面的代码写入一个标签,显示的内容是‘创建暴雪游戏通行证,开启您的冒险旅程’
# 导入tkinter模块import tkinter#创建TK()类的实例对象,也就是主窗口mainWindow = tkinter.Tk()# 通过title方法设置主窗口的标题mainWindow.title('利用tkinter开发GUI最小框架')# 设置窗口的大小及显示位置mainWindow.geometry('600x600+100+200')# 设置窗口背景颜色mainWindow['background'] = 'green'# 创建一个标签label1 = tkinter.Label(mainWindow,text = '创建暴雪游戏通行证,开启您的冒险旅程', fg = 'white',bg = 'black',font=('黑体',12),width = 50,height = 1)label1.pack()# 调用mainloop进入主循环tkinter.mainloop()运行结果:
上面代码中pack()是一种布局,后面会详细介绍,大家先打上就行。
有时我们需要改变标签中的内容,最简单的方法就是将Label控件和一个变量绑定,修改变量就可以修改标签内容。下面写一个实例代码:
from tkinter import StringVarvar = StringVar()var.set('创建暴雪游戏通行证,开启您的冒险旅程')print(var.get())其中StringVar是tkinter的一个类,var是类的实例。set方法用来设置var的值,get方法用于获取var的值,将上面的代码重写:
# 导入tkinter模块import tkinterfrom tkinter import StringVar#创建TK()类的实例对象,也就是主窗口mainWindow = tkinter.Tk()# 通过title方法设置主窗口的标题mainWindow.title('利用tkinter开发GUI最小框架')# 设置窗口的大小及显示位置mainWindow.geometry('600x600+100+200')# 设置窗口背景颜色mainWindow['background'] = 'green'# 创建一个标签var = StringVar()var.set('创建暴雪游戏通行证,开启您的冒险旅程')label1 = tkinter.Label(mainWindow,text = var.get(), fg = 'white',bg = 'black',font=('黑体',12),width = 50,height = 1)label1.pack()# 调用mainloop进入主循环tkinter.mainloop()运行的结果和上面是一样的。