按钮组件,用于监听用户行为,调用具体功能函数。按钮上可以是文字或者图片。

语法:

Button(master,option……)

master 父容器

option 参数

参数:

参数

属性

举例或备注

bg

按钮背景颜色

 

fg

按钮前景颜色

按钮上的文字颜色

bd

按钮边框大小

边框会呈现立体感

activebackground

鼠标点击时按钮背景色

 

activeforeground

鼠标点击去时按钮前景色

 

font

按钮文本字体

 

height

按钮高度

 

width

按钮宽度

 

highlightcolor

要高亮的颜色

目前版本对按钮无效

padx

按钮横向内边距

按钮内容与按钮的边框间距

pady

按钮纵向内边距

按钮内容与按钮的边框间距

relief

边框样式

flat sunken raised groove ridge

 

state

按钮组件状态

normal active disabled

 

justify

文本对齐方式。

left、right、center

多行文本是才生效

text

按钮文本内容

 

image

按钮上显示的图片

 

command

点击按钮时执行的函数

按钮关联的函数

underline

下划线

取值为数字 0 1 2……等

值等于0时,第一个字符带下划线。值为1时,第二个字符带下划线,以此类推

wraplength

按钮文本多行显示

参考代码示例

anchor

文本或图像的位置。

选项:n s w e ne nw se sw center

 

常用方法:

config()

对按钮属性进行设置

 

 

综合示例:

import tkinter as tk

root = tk.Tk()

btn1 = tk.Button(root,text='测试按钮1',bg='white',fg='red',padx=30,pady=20)
# 点击按钮时,按钮的背景色和前景色
btn2 = tk.Button(root,text='测试按钮2',activebackground='blue',activeforeground='red')
# 设置按钮边框大小,按钮整体呈现立体感
btn3 = tk.Button(root,text='测试按钮3',bd='100')
# 按钮字体设置为黑体,目前版本highlightcolor对按钮无效
btn4 = tk.Button(root,text='测试按钮4',font='SimHei',height=10,width=10,highlightcolor='red')
# 设置按钮边框样式
btn5 = tk.Button(root,text='测试按钮5',relief='ridge')
# 设置按钮不可用
btn6 = tk.Button(root,text='测试按钮6',state='disabled')
btn7 = tk.Button(root,text='测试按钮7\n测试\n按钮7测试按钮7',justify='right')
# 指定一行文本的长度,即文本长度达到多长以后换行显示
btn8 = tk.Button(root,text='测试按钮8测试按钮8测试按钮8',wraplength=80)
#  文本靠右显示,第四个字符带下划线
btn9 = tk.Button(root,text='测试按钮9',underline='0',anchor='e',width='30')
# 以照片为按钮
photo = tk.PhotoImage(file=r'lixiaolong.png')
btn10 = tk.Button(root,text='测试按钮10',image=photo)
#点击按钮11将背景置为红色
def btn11push():
    btn11.config(bg='red')
btn11 = tk.Button(root,text='测试按钮11',command=btn11push)

btn1.grid(row=0,column=0)
btn2.grid(row=0,column=1)
btn3.grid(row=0,column=2)
btn4.grid(row=0,column=3)
btn5.grid(row=1,column=0)
btn6.grid(row=1,column=1)
btn7.grid(row=1,column=2)
btn8.grid(row=1,column=3)
btn9.grid(row=1,column=4)
btn10.grid(row=2,column=0)
btn11.grid(row=2,column=1)

root.mainloop()

python之tkinter的button控件_button