首页 > 解决方案 > Tkinter Checkbutton 在颜色更改后不会保留其复选标记

问题描述

所以我有一个黑白 GUI,我需要使用复选框,我设置了它,复选框看起来没问题,直到我点击它,然后突然复选标记不会停留在我的点击之后。问题来自开始更改按钮颜色的行。但我需要这个配色方案,但我也需要能够看到复选标记。

from Tkinter import *

master = Tk()

checkCmd= IntVar()
checkCmd.set(False)

test = Checkbutton(master, variable=checkCmd, onvalue=True, offvalue=False, text="Old Testament", \
            bg='black', fg='white', activebackground='black', activeforeground='white')
test.pack()
buttonCmd = Button(master, text="Run Checked Items").pack()


mainloop()

标签: pythonpython-2.7user-interfacetkinter

解决方案


复选图标共享白色的前景色,并且您的 activeforeground 也是白色的。

一个简单的方法是改变selectcolor选择器的背景调整:

test = Checkbutton(master, variable=checkCmd, onvalue=True, offvalue=False, text="Old Testament",
            bg='black', fg='white', activebackground='black', activeforeground='white',selectcolor="black")

推荐阅读