<div class="toc">
<p class="toc-title">目录
<div class="toc-list">
Button小部件是一个标准的Tkinter的控件,用于实现各种按钮。按钮可以包含文本或图像,您可以调用Python函数或方法用于每个按钮。Tkinter的按钮被按下时,会自动调用该函数或方法
基本用法:Button(根对象,[属性列表])
根对象:在那个窗体显示,例如主窗体。
属性列表:是可选的属性=属性值组成。
font:设置字体与字体的大小
用法:font=("字体名",大小) 例如:font=(“黑体”, 20)
fg 前景色,也就是字体的颜色,bg 背景颜色
用法:fg="red",fg="#121234"
width height 标签的宽度与高度,都是以系统默认的中文的一个字体宽高为单位
用法:width = 5,height=2
import tkinter as tk
win = tk.Tk()
普通的按钮
button1 = tk.Button(win,text="Button1")
button1.pack()
背景色与前景色
button2 = tk.Button(win,text="Button2",bg="green",fg="blue")
button2.pack()
宽度与高度
button3 = tk.Button(win,text="Button3",width=10,height=2)
button3.pack()
边距
button4 = tk.Button(win,text="Button4",padx=10,pady=10)
button4.pack()
win.mainloop()
<h4 id="输出效果">(2)输出效果

需要先导入图片的路径:img1 = tk.PhotoImage(file="image/01.png")
再使用:image=img1
注:目前支持 .png 与 .gif 格式, 还不支持 .jpg格式,==Button的大小是根据图片的大小来确定的。==
import tkinter as tk
win = tk.Tk()
img1 = tk.PhotoImage(file="image/01.png")
img2 = tk.PhotoImage(file="image/03.png")
img3 = tk.PhotoImage(file="image/04.png")
300像素大小的图片
button1 = tk.Button(win,text="Button1",image=img1)
button1.pack()
150像素大小的图片
button2 = tk.Button(win,image=img2)
button2.pack()
50像素大小的图片
button3 = tk.Button(win,image=img3)
button3.pack()
win.mainloop()
<h4 id="输出效果-1">(2)输出效果:

需要使用:compound="对齐方式",
对齐方式有:'left',"right","center"
import tkinter as tk
win = tk.Tk()
img1 = tk.PhotoImage(file="image/01.png")
img2 = tk.PhotoImage(file="image/03.png")
img3 = tk.PhotoImage(file="image/04.png")
button1 = tk.Button(win,image=img1,compound="left")
button1.pack()
button2 = tk.Button(win,image=img2,compound="center")
button2.pack()
button3 = tk.Button(win,image=img3,compound="right")
button3.pack()
win.mainloop()
<h4 id="输出效果-2">(2)输出效果

cursor="鼠标的属性值"
pencil:笔型
circle:圆形
hand1:手型1
hand2:手型2
import tkinter as tk
win = tk.Tk()
笔型
button1 = tk.Button(win,cursor="pencil")
button1.pack()
圆形
button2 = tk.Button(win,cursor="circle")
button2.pack()
手型1
button3 = tk.Button(win,cursor="hand1")
button3.pack()
手型2
button4 = tk.Button(win,cursor="hand2")
button4.pack()
win.mainloop()
<h4 id="输出效果-3">(2)输出效果
当我们把鼠标放在按钮上时,鼠标的形状会显示不同的样式。

relief= "边框样式值"
flat 无边框
groove 中间凹
ridge 中间凸
raised 往中间凸
solid 往中间凹
sunken 不可以
import tkinter as tk
win = tk.Tk()
flat 无边框
button1 = tk.Button(win,text="flat",relief="flat",bd=10)
button1.pack()
groove 中间凹
button2 = tk.Button(win,text="groove",relief="groove",bd=10)
button2.pack()
ridge 中间凸
button3 = tk.Button(win,text="raised",relief="ridge",bd=10)
button3.pack()
raised 往中间凸
button4 = tk.Button(win,text="ridge",relief="raised",bd=10)
button4.pack()
solid 往中间凹
button5 = tk.Button(win,text="solid",relief="solid",bd=10)
button5.pack()
sunken 不可以
button6 = tk.Button(win,text="sunken",relief="sunken",bd=10)
button6.pack()
win.mainloop()
<h4 id="输出效果-4">(2)输出效果


我们使用Button传递数值时,需要用:
lambda: 功能函数(var1,var2,……)
我们同样创建一个简单的窗体,只有一个控件按钮
我们绑定的事件是,当我们点击按钮时,会传入两个参数,并在功能函数进行计算。
import tkinter as tk
"""
Button command 传值事件
command= lambda: function(var1,...)
"""
def sum_fun(a,b):
result = a + b
print("%d + %d = %d" % (a,b,result))
win = tk.Tk()
button = tk.Button(win,text="传值事件",command=lambda: sum_fun(12,13))
button.pack()
win.geometry("300x300+200+200")
win.mainloop()
<h4 id="输出效果-6">(2)输出效果:

(编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|