【python】【GUI编程】tkinter的基本使用

举报
huahua.Dr 发表于 2021/01/26 19:50:28 2021/01/26
【摘要】 Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。

一、tkinter是什么

Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。

由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如。

说明:Python3.x 版本使用的库名为 tkinter,即首写字母 T 为小写。

二、基本使用

	# 导入 tkinter模块
	import tkinter
	# 定义一个class
	from tkinter import font
	class DemoDraw:
	    # def 定义一个初始化函数(使用这个类都会初始化这个方法)
	    # 参数放在括号内传递
	    def __init__(self, data, config):
	        # 定义好一个窗口界面对象
	        self.root = tkinter.Tk()
	        # 设置窗口界面的标题
	        self.root.title("demo")
	        # 定义界面大小
	        self.root.geometry('860x735+0+0')
	        # 设置是否全屏
	        # self.root.attributes("-fullscreen", True)
	        # 设置是否可以拖拉窗口界面改变大小
	        self.root.resizable(False, False)
	        # 设置窗口界面的透明度
	        self.root.attributes('-alpha', config[2])
	        # 在窗口界面上增加一块画布,后面就可以在这块画布上涂鸦了
	        self.canvas = tkinter.Canvas(self.root,
	                                     width=1500,  # 指定画布的宽度
	                                     height=900,  # 指定画布的高度
	                                     bg='#FFFFFF')  # 指定画布的背景色
	        # 画按钮,并设置一些参数:按钮文字的大小、位置、颜色和字体
	        self.button_start = tkinter.Button(self.root, text="点击", width=10, height=2, bg="#990033", font="楷体 -18 bold")
	        self.button_start.place(x=500, y=650, width=110, height=90)  # 设置按钮的放置位置和大小
	        self.button_start.bind("<Button-1>", self.newtask)  # 给按钮绑定一个点击事件,事件关联到self.newtask的方法中
	
	        # 画标签,并设置一些参数:按钮文字的大小、位置、颜色、背景颜色和字体
	        self.third = tkinter.Label(self.root, text="标签", fg="red", bg="yellow", font=("宋体", 14, "bold"))
	        self.third.place(x=0, y=10, width=160, height=30)  # 标签放置的位置
	
	        # 添加键盘控制,绑定self.newtask事件
	        self.root.bind("<space>", self.newtask)
	        # 声明变量
	        self.test_button= False
	        # 调用设置界面的方法
	        self.setwindow()
		     # 运行
	        self.root.mainloop()
	
	    # 定义界面布局方法
	    def setwindow(self):
	        # 按钮
	        displayfont = font.Font(size=22)
	        self.btn1 = tkinter.Button(self.root, text='按钮2', bg='#990033', font=displayfont)
	        self.btn1.place(x=200, y=650, width=300, height=90)
	
	        # 列表
	        self.target = tkinter.Listbox(self.root, bg="#990000", font=("宋体", 17, "bold"), fg="yellow")
	        self.target.place(x=0, y=50, width=220, height=610)
	
	        self.target2 = tkinter.Listbox(self.root, bg="#990000", font=("宋体", 17, "bold"), fg="yellow")
	        self.target2.place(x=210, y=50, width=220, height=610)
	
	        self.target3 = tkinter.Listbox(self.root, bg="#990000", font=("宋体", 17, "bold"), fg="yellow")
	        self.target3.place(x=425, y=50, width=220, height=610)
	
	        self.target4 = tkinter.Listbox(self.root, bg="#990000", font=("宋体", 17, "bold"), fg="yellow")
	        self.target4.place(x=640, y=50, width=220, height=610)
	
	    # 绑定的事件方法
	    def newtask(self, event):
	        print('-----')
	
	# 主函数
	if __name__ == '__main__':
	    name_list = ['test1','test2']
	    config_list = [4,20,0.8]
	    c = DemoDraw(name_list, config_list)

三、运行效果

四、总结

Tkinter基本使用步骤:

  1. 导入thinter模块包
  2. 使用thinter模块创建一个窗口对象tkinter.TK()
  3. 设置窗口的显示属性
  4. 在窗口上添加画布tkinter.Canvas()
  5. 设置画布的显示属性
  6. 在画布上添加各种页面元素(如按钮button、标签label、列表listbox、文本框text等)
  7. 给画布上的页面元素动态增加事件、数据等。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。