Python 如何在Tkinter中更改计算器应用程序的按钮?
我一直在用Tkinter为计算器开发python应用程序。我想知道如何使用字符串访问按钮的属性,如大小、高度、宽度和颜色。到目前为止,我已经能够使用style.configure(“TButton”,background='red')将按钮后面的线条背景更改为红色, font=“Serif 15”, 填充=10) 如何更改按钮本身?如果有人能帮助我,我将不胜感激Python 如何在Tkinter中更改计算器应用程序的按钮?,python,user-interface,button,tkinter,calculator,Python,User Interface,Button,Tkinter,Calculator,我一直在用Tkinter为计算器开发python应用程序。我想知道如何使用字符串访问按钮的属性,如大小、高度、宽度和颜色。到目前为止,我已经能够使用style.configure(“TButton”,background='red')将按钮后面的线条背景更改为红色, font=“Serif 15”, 填充=10) 如何更改按钮本身?如果有人能帮助我,我将不胜感激 from tkinter import * from tkinter.ttk import * from tkinter import
from tkinter import *
from tkinter.ttk import *
from tkinter import ttk
class Calculator:
calc_value = 0.0
div_trigger = False
mult_trigger = False
add_trigger = False
sub_trigger = False
def __init__(self,root):
self.entry_value = StringVar(root,value="")
root.title("Calculator")
root.geometry("600x500")
root.resizable(width=True, height=True)
style = ttk.Style()
style.configure(self, background='red')
style.configure("TButton", #background='red',
font="Serif 15",
padding=10 )
style.configure("TEntry",
font="Serif 15",
padding=10 )
self.number_entry = ttk.Entry(root,
textvariable=self.entry_value,width=50)
self.number_entry.grid(row=0, columnspan=4)
#-------1st row---------
self.button7 = ttk.Button(root, text="7",
command=lambda: self.button_press('7')).grid(row=1, column=0)
self.button8 = ttk.Button(root, text="8",
command=lambda: self.button_press('8')).grid(row=1, column=1)
self.button9 = ttk.Button(root, text="9",
command=lambda: self.button_press('9')).grid(row=1, column=2)
self.button_div = ttk.Button(root, text="/",
command=lambda: self.button_press('/')).grid(row=1, column=3)
#-------2nd row---------
self.button4 = ttk.Button(root, text="4",
command=lambda: self.button_press('4')).grid(row=2, column=0)
self.button5 = ttk.Button(root, text="5",
command=lambda: self.button_press('5')).grid(row=2, column=1)
self.button6 = ttk.Button(root, text="6",
command=lambda: self.button_press('6')).grid(row=2, column=2)
self.button_mult = ttk.Button(root, text="*",
command=lambda: self.button_press('*')).grid(row=2, column=3)
#-------3rd row---------
self.button1 = ttk.Button(root, text="1",
command=lambda: self.button_press('1')).grid(row=4, column=0)
self.button2 = ttk.Button(root, text="2",
command=lambda: self.button_press('2')).grid(row=4, column=1)
self.button3 = ttk.Button(root, text="3",
command=lambda: self.button_press('3')).grid(row=4, column=2)
self.button_add = ttk.Button(root, text="+",
command=lambda: self.button_press('+')).grid(row=4, column=3)
#-------4th row---------
self.button_clear = ttk.Button(root, text="AC",
command=lambda: self.button_press('AC')).grid(row=5, column=0)
self.button0 = ttk.Button(root, text="0",
command=lambda: self.button_press('0')).grid(row=5, column=1)
self.button_equal = ttk.Button(root, text="=",
command=lambda: self.button_press('=')).grid(row=5, column=2)
self.button_sub = ttk.Button(root, text="-",
command=lambda: self.button_press('-')).grid(row=5, column=3)
root = Tk()
calc = Calculator(root)
root.mainloop()
#button1 = Button(topframe,padx=16, pady=16, bd=8, text="1", fg="black", bg = random.choice(colors))
这里有一些关于这个的文件 如果您想更改botton大小,可以使用
button1.config(height = 100, width = 100)
可能重复的OP不是使用
tkinter.Button
,而是使用没有高度选项的ttk.Button
。此答案不回答OPs问题。(tkinter.Button和ttk.Button是不同的东西)。