Tkinter:制作课程'用于按钮和标签

时间:2014-06-05 01:10:47

标签: python python-3.x tkinter

所以,我在tkinter框架中有很多不同的按钮和标签,我都希望它们具有相似的属性。让我们说我希望他们所有人都有一个红色的前景色,并有一个透明的背景(我甚至可以这样做吗?这个透明背景只适用于按钮。)

我可以使用class按钮(我认为这是ttk,但最好不要这样),类似于css会使我的所有按钮和标签都有红色文字吗?

2 个答案:

答案 0 :(得分:6)

您可以扩展Button类并根据需要定义其属性。例如:

from tkinter import *


class MyButton(Button):

    def __init__(self, *args, **kwargs):
        Button.__init__(self, *args, **kwargs)
        self['bg'] = 'red'



root = Tk()
root.geometry('200x200')

my_button = MyButton(root, text='red button')
my_button.pack()

root.mainloop()

enter image description here

答案 1 :(得分:0)

from tkinter import *

class My_Button(Button):
    def __init__(self, text, row, col, command, color=None, **kwargs):
        self.text = text
        self.row = row
        self.column = col
        self.command = command
        self.color = color
        super().__init__()
        self['bg'] = self.color
        self['text'] = self.text
        self['command'] = self.command
        self.grid(row=self.row, column=self.column)


def dothings():
    print('Button class worked')

window = Tk()
window.title("Test Button Class")
window.geometry('400x200')

btn1 = My_Button("Click Me", 0, 0, dothings, 'green')

window.mainloop()