HOWTO · Tkinter

如何更改 Tkinter 按鈕顏色

本教程介紹如何設定 Tkinter Button 顏色。

本頁內容

Tkinter Button 控制元件具有屬性 bg 和 fg 來設定背景和前景色。我們可以在初始化 Button 物件時為 bg 和 fg 分配顏色,並使用 configure 方法更改 Tkinter Button 的顏色或為 bg 和 fg 鍵分配新值。

設定 Tkinter Button 顏色

import tkinter as tk


class Test:
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")
        self.buttonA = tk.Button(self.root, text="Color", bg="blue", fg="red")

        self.buttonB = tk.Button(
            self.root, text="Click to change color", bg="gray", fg="purple"
        )
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()


app = Test()

Tkinter 按鈕設定背景和前景顏色

你也可以將 bg 替換為 background,將 fg 替換為 foreground 來設定 Tkinter Button 背景和前景色。

import tkinter as tk


class Test:
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")
        self.buttonA = tk.Button(
            self.root, text="Color", background="blue", foreground="red"
        )

        self.buttonB = tk.Button(
            self.root,
            text="Click to change color",
            background="gray",
            foreground="purple",
        )
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()


app = Test()

用 configure 方法改變 Tkinter Button 顏色

建立 Tkinter Button 控制元件之後,我們可以使用 configure 方法更改其顏色。

import tkinter as tk


class Test:
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")
        self.buttonA = tk.Button(self.root, text="Color", bg="blue", fg="red")

        self.buttonB = tk.Button(
            self.root, text="Click to change color", command=self.changeColor
        )
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()

    def changeColor(self):
        self.buttonA.configure(bg="yellow")


app = Test()

Tkinter 設定按鈕顏色

self.buttonA.configure(bg="yellow")

它將背景 bg 配置為黃色。

使用 bg /fg 屬性更改 Tkinter Button 顏色

bg 和 fg 是 Tkinter Button 控制元件物件字典的鍵值,因此,我們可以通過為這些鍵指定新的值來更改 Tkinter Button 的顏色。

import tkinter as tk


class Test:
    def __init__(self):
        self.root = tk.Tk()
        self.root.geometry("250x100")
        self.buttonA = tk.Button(self.root, text="Color", bg="blue", fg="red")

        self.buttonB = tk.Button(
            self.root, text="Click to change color", command=self.changeColor
        )
        self.buttonA.pack(side=tk.LEFT)
        self.buttonB.pack(side=tk.RIGHT)
        self.root.mainloop()

    def changeColor(self):
        self.buttonA["bg"] = "gray"
        self.buttonA["fg"] = "cyan"


app = Test()

Tkinter 使用 bg 和 fg 屬性設定按鈕顏色