使用字典创建复选框时如何更改 Tkinter 复选框的状态?答案

您所在的位置:网站首页 tkinter复选框selectimage 使用字典创建复选框时如何更改 Tkinter 复选框的状态?答案

使用字典创建复选框时如何更改 Tkinter 复选框的状态?答案

2023-04-06 19:42| 来源: 网络整理| 查看: 265

我正在制作一个程序,它为用户提供了一个可供选择的复选框。复选框是通过循环自动创建的。我能够检测到哪些复选框已被勾选,但我以后无法自行更改特定复选框的状态。具体来说,我想在单击按钮后从选中的复选框中删除所有刻度,但更一般地说,我想知道如何更改单个复选框的状态。这是一个示例代码:

import tkinter from tkinter import * tagsValue = {'Beef': 0, 'Fish': 0, 'Chicken': 0, 'Pork': 0, 'Lamb': 0, 'Egg': 0, 'Ham': 0} def execute(): my_text.delete('1.0', END) for tag in tagsValue: if tagsValue[tag].get() == '1': my_text.insert(INSERT, ('\n' + tag)) root = Tk() root.title('User Selection') root.geometry("300x300") my_button = Button(root, text ="Submit",command = execute) my_text = Text(root) for tag in list(tagsValue): tagsValue[tag] = Variable() l = Checkbutton(root,justify=LEFT,width=8, text=tag, variable=tagsValue[tag]) l.deselect() l.pack() my_button.pack() my_text.pack() root.mainloop()

我在root.mainloop() 之前尝试过使用tagsValue['Ham'] = '0' 和tagsValue['Ham'] = 0 之类的东西,但这些都不起作用。我知道使用['state'] 来更改复选框的状态,但是由于我的复选框没有命名,所以我不能使用它。 (我不能单独命名复选框,因为我有很多很多复选框)。那么如何更改复选框的状态呢?



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3