【发布时间】:2022-08-14 09:42:57
【问题描述】:
所以这里是我的代码
root = Tk()
# 1st frame
frame_1 = LabelFrame(root)
frame_1.pack()
#var
var = IntVar()
var.set(0)
test = [\'test1\', \'test2\', \'test3\', \'test4\']
# radio button
radio_1 = Radiobutton(frame_1, text = test[0], value = 1, variable = var)
radio_1.pack()
radio_2 = Radiobutton(frame_1, text = test[1], value = 2, variable = var)
radio_2.pack()
radio_3 = Radiobutton(frame_1, text = test[2], value = 3, variable = var)
radio_3.pack()
# 2nd frame
frame_2 = LabelFrame(root)
frame_2.pack()
# buttons
button_1 = Button(frame_2, text = test[0], state = DISABLED)
button_1.pack()
button_2 = Button(frame_2, text = test[1], state = DISABLED)
button_2.pack()
button_3 = Button(frame_2, text = test[2], state = DISABLED)
button_3.pack()
button_4 = Button(frame_2, text = test[3], state = DISABLED)
button_4.pack()
root.mainloop()
我试图做的是在选择单选按钮时启用按钮。 这是我尝试过的。
def changeState():
if var.get() != 0:
button_1[\'state\'] = NORMAL
button_2[\'state\'] = NORMAL
button_3[\'state\'] = NORMAL
button_4[\'state\'] = NORMAL
changeState()
我相信这只是最初设置它,当我选择一个单选按钮或更改它时,它不会更新。我想我可以在按钮内使用命令,但不明白如何去做。
标签: python tkinter button radio-button