Python 无法在条目小部件上设置焦点()
当我试图在条目小部件上设置焦点时,我收到一个错误Python 无法在条目小部件上设置焦点(),python,python-3.x,tkinter,Python,Python 3.x,Tkinter,当我试图在条目小部件上设置焦点时,我收到一个错误 回溯(最近一次呼叫最后一次): 文件“C:/PythonPrograms/Tkinter/test_case.py”,第13行,在 entSearch.focus() AttributeError:“非类型”对象没有属性“焦点” 通过在堆栈溢出上搜索此错误的其他事件,修复程序似乎在另一行调用网格方法 entSearch=Entry(main,textvariable=text,width=50,font='arial 12') entSearc
回溯(最近一次呼叫最后一次):
文件“C:/PythonPrograms/Tkinter/test_case.py”,第13行,在
entSearch.focus()
AttributeError:“非类型”对象没有属性“焦点”
通过在堆栈溢出上搜索此错误的其他事件,修复程序似乎在另一行调用网格方法
entSearch=Entry(main,textvariable=text,width=50,font='arial 12')
entSearch=entSearch.grid(行=0,列=1,粘性=W)
而不是
entSearch=Entry(主、,
textvariable=text,
宽度=50,
font='arial 12').grid(行=0,列=1,粘性=W)
不幸的是,这个补丁对我不起作用
从tkinter导入*
main=Tk()
主标题(“测试用例”)
主要几何图形('750x750')
main.configure(background='ivory3')
text=StringVar()
entSearch=Entry(main,textvariable=text,width=50,font='arial 12')
entSearch=entSearch.grid(行=0,列=1,粘性=W)
entSearch.focus()
main.mainloop()
预计,当代码运行时,条目小部件将处于焦点位置
但我收到的却是错误
回溯(最近一次呼叫最后一次):
文件“C:/PythonPrograms/Tkinter/test_case.py”,第13行,在
entSearch.focus()
AttributeError:“非类型”对象没有属性“焦点”
您要查找的函数是focus\u set()
,而不是focus()
。简要介绍focus\u set()
方法
编辑:
此外,行
entSearch=entSearch.grid(行=0,列=1,粘性=W)
也会导致问题。默认情况下,grid
方法不返回值(仅显示给定的小部件)。因此,它返回None
——您将此值存储在entSearch
中,这意味着您无法“聚焦”在None
对象上。要解决这个问题,只需删除分配并显示小部件:entSearch.grid(行=0,列=1,粘性=W)
您要查找的函数是focus\u set()
,而不是focus()
。简要介绍focus\u set()
方法
编辑:
此外,行
entSearch=entSearch.grid(行=0,列=1,粘性=W)
也会导致问题。默认情况下,grid
方法不返回值(仅显示给定的小部件)。因此,它返回None
——您将此值存储在entSearch
中,这意味着您无法“聚焦”在None
对象上。要解决这个问题,只需删除分配并显示您的小部件:entSearch.grid(row=0,column=1,sticky=W)
感谢您的快速响应。我试过使用focus_set(),但得到了相同的精确结果。这很有效,谢谢!!!顺便说一句,我用focus()和focus_set()都试过了。两者都有效。有什么区别?哦,没关系。我看到focus是focus_set的别名。感谢您的快速回复。我试过使用focus_set(),但得到了相同的精确结果。这很有效,谢谢!!!顺便说一句,我用focus()和focus_set()都试过了。两者都有效。有什么区别?哦,没关系。我看到focus是focus_set的别名。谢谢