【发布时间】:2021-11-14 09:43:28
【问题描述】:
我正在尝试使用 TKinter 和 Python 设置单选按钮的默认值。这是我第一次使用它,所以我很新。我的理解是,在我的例子中,默认值应该设置为第二个单选按钮(value=1)。
from tkinter import *
from tkinter import ttk
class RadioButtons:
def __init__(self, root):
self.root = root
self.jobNum = IntVar(value=1)
self.create()
def create(self):
content = ttk.Frame(self.root)
radioButtons = ttk.LabelFrame(content, borderwidth=5, relief="ridge", width=400, height=400, text="Radio Buttons")
radioButtonsLbl=ttk.Label(radioButtons, text="Buttons")
# radio buttons
jobType1 = ttk.Radiobutton(radioButtons, text="Button 0", variable= self.jobNum, value=0)
jobType2 = ttk.Radiobutton(radioButtons, text="Button 1", variable= self.jobNum, value=1)
jobType3 = ttk.Radiobutton(radioButtons, text="Button 2", variable= self.jobNum, value=2)
content.grid(column=0, row=0)
# add to grid
radioButtons.grid(column=0, row=0, columnspan=3, rowspan=3)
radioButtonsLbl.grid(column=0, row=5, padx=20, pady=5, sticky=W)
jobType1.grid(column=1, row=5, padx=20, pady=0, sticky=W)
jobType2.grid(column=1, row=6, padx=20, pady=0, sticky=W)
jobType3.grid(column=1, row=7, padx=20, pady=0, sticky=W)
root = Tk()
RadioButtons(root)
root.mainloop()
但是在运行程序时没有选择单选按钮。 (screenshot of program)
调试器确认self.jobNum的值设置正确。(screenshot of debugger)
如何设置默认值?在创建和添加单选按钮之前和之后,我尝试了很多事情,包括self.jobNum.set(),但无济于事。
我在这里想念什么?这是某种范围问题吗?
【问题讨论】:
标签: python tkinter radio-button