前期回顾
1 创建窗口
文章目录
-
0 准备工作
1 介绍
2 基本用法
3 放文字
4 字体
5 颜色
6 宽度与高度
7 插入图片
8 拓展:tkVar绑定(textvariable)
其它
0 准备工作
要使用,先导入:import tkinter as tk
导入名字叫tkinter的库,并将名字改为tk,这样方便使用
注意:尽量不要使用IDLE,不然可能会和tkinter有冲突,因为IDLE是tkinter写的
1 介绍
要创建一个标签,就用tkinter.Label(),但是必须要有至少一个参数,它创建的时候要放在窗口名字.mainloop()这一行的前面,因为要先创建才可以进入主循环,不然创建不了。
几个常用的参数:
参数 | 说明 |
---|---|
text | 文本 |
font | 字体 |
bg | 背景颜色 |
fg | 字体颜色 |
width | 标签宽度 |
height | 标签高度 |
image | 插入图片 |
anchor | 文本位置 |
textvariable | 与tkVar绑定,实现文本自动更新 |
前面说了,tkinter.Label()
不可以没有参数,要至少一个参数,那现在就来说说怎么使用。
它要的那个参数就是窗口的名字,因为你要把东西放到一个窗口,你要先告诉它要放到哪,所以就是:tkinter.Label(窗口名称)
。
因为以后还要用到你创建的这个Label,所以要赋值到一个变量,就用l来代替吧:l = tkinter.Label(窗口名称)
最后你还要放置它,把它放到窗口里,你不仅仅要告诉它窗口,还要放置,不然你是看不到它的,就这放置:l.pack()
(注意:还有更多放置的方法,这里先用pack,其它用法以后讲~~~)
范例:
import tkinter as tkwindow = tk.Tk()window.title("Python tkinter教程-02:Label标签 by 罗富茗")l = tk.Label(window)l.pack()window.mainloop()
作者,你在骗我们吧,什么东西都没有啊?!!
作者道:因为没有设置文字,必须放文字才行
信你一次!
3 放文字
上面说了,必须要放文字,不然你什么都看不到,所以现在就来讲讲,怎么放文字尼¿¿¿
接下来就要用text参数了,这个参数很简单只要:
tkinter.Label(窗口名字, text="你要的文字")
就行了~(提示:可以使用\n来进行换行哦~如text="你\n好")
范例:
import tkinter as tkwindow = tk.Tk()window.title("Python tkinter教程-02:Label标签 by 罗富茗")l = tk.Label(window, text="Python tkinter教程-02:Label标签 by 罗富茗")l.pack()window.mainloop()
4 字体
有的人要一些潦草的字或者其他的字体,就要用font参数了,这里可以设置字体、大小等字体设置(更多设置以后详细讲),这时,就要用到font参数楼~~~
基础设置:font=(字体名称, 字体大小)
(比如:tkinter.Label(窗口名称, text="test", font=("kaiti", 20))
)(小技巧:把"kaiti"改为None可以使用系统默认字体哦!谨慎使用,有的系统默认字体里没有中文!)
字体兼容问题:
每个系统的字体都不一样,大家一般都用楷体,我就讲一下楷体吧。
Windows系统:kaiti
Linux & Mac系统:kaittf
范例:
import tkinter as tkwindow = tk.Tk()window.title("Python tkinter教程-02:Label标签 by 罗富茗")l1 = tk.Label(window, text="楷体", font=("kaiti", 20))l1.pack()l2 = tk.Label(window, text="系统默认字体", font=(None, 20))l2.pack()window.mainloop()
(还是喜欢楷体,方方正正)
5 颜色
我们调了字体,那肯定要调颜色喽,不然太单调了。。。
调背景颜色用bg
调字体颜色用fg
tkinter支持颜色代码编号,也支持英文,tkinter颜色表(一定要保存哦):
字体颜色:红色 背景颜色:黑色:
tkinter(窗口名称, text="hi", fg="red", bg="black")
字体颜色:黑色 背景颜色:蓝色:tkinter(窗口名称, text="hi", fg="black", bg="blue")
(好好学学英语吧!)
范例:
import tkinter as tkwindow = tk.Tk()window.title("Python tkinter教程-02:Label标签 by 罗富茗")l = tk.Label(window, text="~黑底白字~", bg="black", fg="white")l.pack()window.mainloop()
6 宽度与高度
这个不怎么常用,因为tkinter会根据文字的长度来自动调节,除非是用来填充颜色的width 宽度
height 高度
使用方法:tkinter.Label(窗口名字, width=宽度[整数], height=高度[整数])
这个就不给案例喽~
7 插入图片
作者,你是不是耍我?人家都是把图片放到Frame上的,你这...
作者的不专业回答:Python大部分写界面的库都是放在Label上的,我也不知道为什么,不要在公众号刷屏问问题(你不刷屏我也不会回答,放心)!
(0)tkinter插入配置要求
必须使用Tcl版本高于8的tkinter,不然图片功能不完善,如果低于8请重新去官网下载安装最新版python,或看第三步获取方法:import tkinter;print(tkinter.TclVersion)(1)逻辑简单程序插入图片
如果要插入图片,而且不是一些大型程序,就可以用这个方法,如果图片太多可能导致加载不了图片!
代码(“公众号logo.png”可以替换成自己的图片):
import tkinter as tkwindow = tk.Tk()window.title("Python tkinter教程-02:Label标签 by 罗富茗")Image = tk.PhotoImage(file="公众号logo.png")#或者gifl = tk.Label(window, image = Image)l.pack()window.mainloop()
效果:
(2)逻辑复杂,Tcl版本低的插入方法:
这时我们就要用到pillow了(pip install pillow)!
pillow支持把pillow加载的图片转换成tkinter图片
(注意:导入时是import PIL!)
上代码(自己研究,谁叫你做这么复杂的程序):
import tkinter as tkfrom PIL import Image, ImageTkwindow = tk.Tk()window.title("Python tkinter教程-02:Label标签 by 罗富茗")Image = Image.open("公众号logo.png")Image = ImageTk.PhotoImage(image=Image)l = tk.Label(window, image = Image)l.pack()window.mainloop()
效果一样!成功!
8 拓展:tkVar绑定(textvariable)
介绍:可以绑定一个tkinter内部的变量,可以做到更改文本
使用方法,以后详细讲解
其它
以后写~~~记得关注!!!
~点个再看,转发一下,来证明你的存在~