问题描述
我正在使用 Tkinter 制作一个简单的界面,并注意到当它们的 Checkbutton 值为 False 或未单击时,它会显示一个覆盖按钮的黑色方块,而不是简单地为空。示例:。我想要的只是在状态为 False 时使按钮完全为空,做了一些挖掘却找不到它。感谢您的时间和帮助!
这是有问题的代码:
querlog = ttk.Checkbutton(window,text='Quero salvar o log',command=quer_salvar_log)
querarquivo = ttk.Checkbutton(window,text='Quero salvar o arquivo de som',command=quer_salvar_som)
解决方法
您应该将一个变量与复选按钮相关联,并且您需要确保该变量设置为与 offvalue
选项相同的值。 offvalue
默认为零。您还需要确保保留一个引用,以便垃圾收集器不会破坏变量(即:不要使用局部变量)
querlog_var = tk.StringVar(value=0)
querarquivo_var = tk.StringVar(value=0)
querlog = ttk.Checkbutton(window,text='Quero salvar o log',command=quer_salvar_log,variable=querlog_var)
querarquivo = ttk.Checkbutton(window,text='Quero salvar o arquivo de som',command=quer_salvar_som,variable=querarquivo_var)
,
我在不使用 variable=
时发现了同样的问题,所以这里是如何做到的:
Checkbutton(master,variable='',**kwargs)
您可以将 variable
属性设置为空字符串,这样就可以修复它