PythonのTkinter基本原理 - 小白篇

   日期:2024-01-17     浏览:41    评论:0    

本文讲解,Python Tkinter 库,的基本原理,白话讲解,面向小白。


Tkinter 是什么:

Tkinter 是 Python 自带的一个,标准库,用于快速创造,简单的 GUI 程序。

为什么要了解 Tkinter:

首先,因为这个库,是 Python 自带的,所以非常方便,随叫随到的那种;再者,总体上讲,Tkinter 的功能还是比较全面的,例如:button,lable,textbox 什么的,都很全面(熟悉 VBA 的同学应该可以想象出来这些功能,就和 Userform 上面的东西是一样的)。所以,要是只想写个日常的小程序什么的,这些功能已经是很足够了。

Tkinter 的基本思路:

首先,先来看段代码,然后根据代码,再来一层一层的讲解:

import tkinter as tk

# 1.创造一个窗口
Window = tk.Tk()

# 2.创造一个 Lable 组件,和一个 Button 组件
label = tk.Label(Window,text = "Hello")
butoon = tk.Button(Window,text = "TapMe")

# 3.把上面两个组件,放到窗口中
label.pack()
butoon.pack()

# 4.让窗口,一直的显示在桌面,不要关闭
Window.mainloop()

这段代码中的 Comments,就是实现的过程,或者步骤;这就是 Tkinter 基本原理,基本思路。

代码拆解:

如果,我们只运行这段代码的话,看到的就只是一个空旷的窗口,什么都没有,就长成下面图片的样子;如果这段代码,没有加上最后的那个Window.mainloop()的话,窗口虽然也能创造出来,但是会闪一下就消失了,或者消失的太快了,你都没看到他闪过。所以必须要加上个 loop,让窗口留在桌面!这一步,是所有 Tkinter GUI 程序固有的第一步!

import tkinter as tk
Window = tk.Tk()
Window.mainloop()


然后,我们在来看中间这两段代码。在 Tkinter 中所有东西都是组件(Widget),每当你要添加一个组件的时候,思路都是同样的“两步走”:先创建这个组件,然后把这个组件放进窗口。就是这个套路。

# 2.创造一个 Lable 组件,和一个 Button 组件
label = tk.Label(Window,text = "Hello")
butoon = tk.Button(Window,text = "TapMe")

# 3.把上面两个组件,放到窗口中
label.pack()
butoon.pack()

当我们在把 button 啊,lable 啊,什么的,各种想要的组件,都按照“两步走”的方式,加进去了之后,运行完整的代码,就会看到下面这个小窗口;当然,你可以往里面添加各种组件,变得更复杂,还可以设计背景,调整颜色,变得更好看;但是,Tkinker 的基本原理,都是相同的。


好吧,就这些了;文章比较简短,虽然只是一个精简的介绍,但可以帮助小白直接抓到重点!



附赠:弹出 MessageBox 和 OpenFile Dialog

另外,Tkinter 还可以,弹出 Message Box,和 Open File Dialog(是不是,超级像 VBA),实现方法也超级简单,代码如下:

# 弹出 Message Box 时,关闭背景窗口
import tkinter
Window = tkinter.Tk()
Window.withdraw()

# 弹出 Message Box
from tkinter import messagebox
messagebox.showinfo(title="", message="Hello World!")

# 弹出 OpenFile Dialog
from tkinter import filedialog
filedialog.askopenfilename()

OK,是不是已经感觉到了,超级好用!哈哈,好吧,小白贡献,语失莫怪,希望对大家有帮助。
喜欢我的博客请来关注哦:Bitssea
(^_^)



 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服