图形用户界面(Graphical User Interface,简称 GUI),是计算机图形学技术的一种,它一般由窗口、下拉菜单或者对话框等图形化的控件组成。
一个最简单的 Tkinter 程序至少应包含以下四个部分:
- 导入 tkinter 模块
- 创建主窗口,也称 root 窗口(即根窗口)
- 添加人机交互控件,同时编写相应的事件函数
- 通过主循环(mainloop)来显示主窗口
# -*- coding:utf-8 -*-
import tkinter as tk
# 调用Tk()创建主窗口
root_window =tk.Tk()
# 给主窗口起一个名字,也就是窗口的名字
root_window.title('C语言中文网:c.biancheng.net')
#开启主循环,让窗口处于显示状态
root_window.mainloop()
上述代码创建了一个没有添加任何交互控件的 Tkinter 程序,它也是最简单的 GUI 程序。这里的主窗口相当于画板,其他的控件都要建立在主窗口之上。主循环也称“消息循环”或“事件循环”其的作用是让主窗口处于显示状态。
# -*- coding:utf-8 -*-
import tkinter as tk
root_window =tk.Tk()
# 设置窗口title
root_window.title('C语言中文网:c.biancheng.net')
# 设置窗口大小:宽x高,注,此处不能为 "*",必须使用 "x"
root_window.geometry('450x300')
# 更改左上角窗口的的icon图标,加载C语言中文网logo标
root_window.iconbitmap('C:/Users/Administrator/Desktop/favicon.ico')
# 设置主窗口的背景颜色,颜色值可以是英文单词,或者颜色值的16进制数,除此之外还可以使用Tk内置的颜色常量
root_window["background"] = "#C9C9C9"
# 添加文本内,设置字体的前景色和背景色,和字体类型、大小
text=tk.Label(root_window,text="C语言中文网,欢迎您",bg="yellow",fg="red",font=('Times', 20, 'bold italic'))
# 将文本内容放置在主窗口内
text.pack()
# 添加按钮,以及按钮的文本,并通过command 参数设置关闭窗口的功能
button=tk.Button(root_window,text="关闭",command=root_window.quit)
# 将按钮放置在主窗口内
button.pack(side="bottom")
#进入主循环,显示主窗口
root_window.mainloop()
测试例子
import tkinter as tk window=tk.Tk()#创建一个主窗口对象 window.title("Jinger's home") screenwidth=window.winfo_screenwidth() screenheight=window.winfo_screenheight() width=300 height=400 size_geo='%dx%d+%d+%d'%(width,height,(screenwidth-width)/2,(screenheight-height)/2) window.geometry(size_geo)#设置窗口大小,位置 window.iconbitmap('C:\\Users\\ASUS\\Pictures\\2.png')#设置图标 window.config(background='blue')#设置背景颜色 window.maxsize(width=1000,height=800)#设置最大调整范围 window.attributes('-alpha',0.5)#用来设置窗口的一些属性,比如透明度(-alpha)、是否置顶(-topmost)即将主屏置于其他图标之上、是否全屏(-fullscreen)全屏显示等 window.attributes('-topmost') #创建文本 text=tk.Label( window,anchor='n',background='red',text='我爱中国', bg='yellow',font=('Times',12) ) text.pack()#文本放在主窗口中 def fun_back(): print('我是...') button=tk.Button(window,text='执行',command=fun_back) button.pack(side='bottom')#按钮放置在主窗口 window.mainloop()#显示主窗口