如何更改 Tkinter 按鈕顏色
Jinku Hu
2023年1月30日
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()

你也可以將 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()

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()

Enjoying our tutorials? Subscribe to DelftStack on YouTube to support us in creating more high-quality video guides. Subscribe
作者: Jinku Hu
