我正在使用tkinter来做一些小的用户输入。 在脚本运行时,我无法找到如何将焦点设置到Entry框。 即当窗口打开时,第一个自动获得焦点的是Entry框。 set_focus()或focus()似乎无法正常工作。
这是我的代码:
root = Tk()
v = StringVar()
text = Entry(root,
textvariable=v).grid(column=0,row=0)
text.focus_set()
root.mainloop()
答案 0 :(得分:1)
几何管理器(.grid()
或.pack()
等)返回None
。您不得在与变量赋值相同的行上使用它:
您的代码尝试在值.focus_set()
的变量text
上调用None
。
此外,将焦点设置为窗口小部件的正确方法是focus_set()
,而不是set_focus()
。
root = Tk()
v = StringVar()
text = Entry(root, textvariable=v)
text.grid(column=0, row=0)
text. focus_set()
root.mainloop()