Skip to main content
 首页 » 编程设计

python之我想在 tkinter GUI 中单击时更改按钮的背景颜色

2024年11月24日27findumars

我有一个用于打开和关闭的 python GUI 代码。我需要修改代码,例如当我按下打开按钮时按钮颜色变为绿色,当我按下关闭按钮时打开按钮颜色变为默认颜色。

from serial import* 
from time import* 
from tkinter import* 
 
window = Tk() 
 
def open_command(): 
    print("Opening") 
 
def close_command(): 
    print("Closing") 
 
b = Button(window, text = "Open", font = ("Times New Roman", 12), fg = "green", bg = "white", height = 1, width = 5, command = open_command).pack() 
b = Button(window, text = "Close", font = ("Times New Roman", 12), fg = "red", bg = "white", height = 1, width = 5, command = close_command).pack() 
 
mainloop() 

当点击打开按钮时,打开按钮的颜色需要从默认颜色变为绿色。如果我们点击关闭按钮,关闭按钮的颜色需要变为红色,打开按钮的颜色需要变为默认颜色。

请您参考如下方法:

您可以简单地使用 .config(bg=...) 将按钮的背景颜色更改为您想要的任何颜色,如下所示:

import tkinter as tk 
 
window = tk.Tk() 
 
def open_command(): 
    open_btn.config(bg='green') 
    close_btn.config(bg='white') 
 
def close_command(): 
    open_btn.config(bg='white') 
    close_btn.config(bg='red') 
 
font=('Times New Roman', 12) 
open_btn = tk.Button(window, text='Open', font=font, fg='green', bg='white', width=5, command=open_command) 
open_btn.pack() 
close_btn = tk.Button(window, text='Close', font=font, fg='red', bg='white', width=5, command=close_command) 
close_btn.pack() 
 
window.mainloop()