首页 > 编程知识 正文

tkinter设计,tkinter复杂界面

时间:2023-05-06 07:04:21 阅读:259779 作者:1193

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开发的第一步:创建主窗口。

# 导入tkinter模块import tkinter#创建TK()类的实例对象,也就是主窗口mainWindow = tkinter.Tk()# 通过title方法设置主窗口的标题mainWindow.title('利用tkinter开发GUI最小框架')# 设置窗口的大小及显示位置mainWindow.geometry('600x600+100+200')# 设置窗口背景颜色mainWindow['background'] = 'green'# 调用mainloop进入主循环tkinter.mainloop()

运行的结果:

这里对上面的代码作详细的说明:

文中的第2行是导入tkinter模块,这是使用tkinter必有的操作;第4行代码创建了Tk类的实例,Tk类创建的实例对象是一个窗口,也就是我们这里的主窗口。第6行代码是通过title方法来设置窗口的标题,大家可以直接复制代码运行就可以看见;第8行代码是通过geometry方法来设置窗口的尺寸和位置。geometry函数接收的参数是字符串,其形式是'widthxheight+x+y',其中width代表窗口的宽度,height代表窗口的高度,x代表窗口的横坐标,y代表窗口的纵坐标。请注意高度和宽度是用x来连接的,后面都是用+号。第10行代码中用了"[]",从这一点可以看到背景色是窗口的一个属性,所以这一行代码是设置了窗口的背景色属性。第12行代码是令窗口一直展现在屏幕上。

四 . 控件
这个窗口空空如也,里面什么都没用,我相信你是不会喜欢这个界面的。现在叫我们向里面添加一些控件。

Label控件(标签)
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()

运行的结果和上面是一样的。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。