Python 如何在Tkinter中更改计算器应用程序的按钮?

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

我一直在用Tkinter为计算器开发python应用程序。我想知道如何使用字符串访问按钮的属性,如大小、高度、宽度和颜色。到目前为止,我已经能够使用style.configure(“TButton”,background='red')将按钮后面的线条背景更改为红色, font=“Serif 15”, 填充=10)

如何更改按钮本身?如果有人能帮助我,我将不胜感激

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是不同的东西)。