python - 当我在 tkinter GUI 中单击时,我想更改按钮的背景颜色
问题描述
我有一个 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()
推荐阅读
- sql - 我可以使用索引优化此查询吗?
- java - 在 Java 中比较 Sets 中的 Sets
- sql - 在 excel 数据集中什么被认为是足够的验证
- angular - Swagger-codegen 不将枚举生成为枚举类型
- javascript - 将鼠标悬停在文本上以显示其他文本
- kotlin - 将 LinkedHasSet 从一种类型转换为另一种
- javascript - 在不更改 DOM 元素的情况下,获取 Html 代码、替换部件并以字符串形式存储在变量中
- python - 在 python 中循环遍历列表的一部分时,我无法正确索引
- reactjs - React:如果子组件不返回null,则将其包装在div中
- freertos - FreeRTOS Mutex 意外行为