python tkinter学习笔记之button
顾名思义,就是一个按钮,鼠标点击,然后会有相应设置的反应产生(打开潘多拉之盒)
创建button部件:
b = tk.Button(window,text='hit me',command=hit_me,bg='white',fg='black',font=('Arial',10),height=1,width=10)
b是创建的button部件的名字,括号里面的内容相当于b的属性,window是所在的窗口的名字
属性 | 值 | 意义 |
---|---|---|
text | ‘hit me’ | 按钮上显示的字符 |
command | 方法名 | 调用方法,使之点击之后所反应 |
bg | 'color' | 背景颜色 |
fg | 'color' | 字体颜色 |
font | ('字体名字',number) | 设置字体,数字是字体大小 |
height | number(数字) | 设置button部件的高 |
width | number(数字) | 设置button部件的宽 |
颜色名列表:https://www.w3school.com.cn/html/html_colornames.asp
示范代码如下:
import tkinter as tk # 导入类库
window = tk.Tk() # 创建一个窗口叫window,理解:一个碗(window)用来装食物(b)的
window.title('my penguin') # 窗口标题
window.geometry('600x300') # 设置窗口界面的大小'长x宽'
var = tk.StringVar() # 将标签的内容设置为字符类型,用var来接收hit_me函数的传出内容用以显示在标签上
l = tk.Label(window,
textvariable=var,
bg="white",
fg="black",font=("Consolas",12),width=30,
height=2)
# 创建一个叫做l的Label部件来配合button的演出,将var的内容作为l的显示内容
# 说明:bg为背景颜色,fg为字体颜色,width为长,height为高,这里的长和高是字符的长和高,
# 比如height=2,就是标签有2个字符的高度
l.pack() # 安胖l标签的位置
on_hit = False # 初始化变量on_hit的值:False
def hit_me(): # 定义hit_me函数
global on_hit
# 设定on_hit为全局变量,关于global的作用见下文链接
if on_hit == False:
on_hit = True
var.set("有人在你的身后")
else:
on_hit = False
var.set("骗你的啦")
#第五百,在窗口界面设置防止Button按键
b = tk.Button(window,text="hit me",font=('Arial',12),fg='white',bg='black',height=1,
width=10,command=hit_me)
b.pack() # 安放b部件的位置
#第六步,主窗口循环显示
window.mainloop()
效果:
关于global的作用
拓展:
实现tkinter中button形状改变的方法
(来源网址:https://www.cnblogs.com/wendell0829/p/9911908.html)