python - “AttributeError:‘函数’对象没有属性集”tkinter
问题描述
当我尝试在 tkinter 中使用 OptionMenu 时,我收到一条错误消息。这是错误:
AttributeError:'function'对象没有属性'set'
编码:
from tkinter import *
w = Tk()
w.geometry("250x250")
w.title("OptionMenu Testing")
def DoNothing():
pass
options = ["Option1", "Option2", "Option3"]
DropdownMenuVar = StringVar()
DropdownMenuVar.set("Option1")
DropdownMenu = OptionMenu(w, DoNothing, *options)
DropdownMenu.place(x=175, y=200)
我可以看到选项,但是当我单击一个时,它会这样做!这段代码只是另一个涉及OptionMenu
s 的脚本的测试脚本。
编辑:刚刚删除了函数参数,现在我得到了这个:
AttributeError: 'str' object has no attribute 'set'
。
解决方案
这一行:
DropdownMenu = OptionMenu(w, DoNothing, *options)
应该是这样的:
DropdownMenu = OptionMenu(w, DropdownMenuVar, *options)
不相关,但我强烈建议您使用 PEP8 样式名称。它使您的代码更易于阅读。
推荐阅读
- java - 为什么这个函数重命名作为参数传递的 LinkedList 节点?
- java - 正则表达式中的 (DEFINE) 功能在 Java 中不起作用
- javascript - 如何在服务器端加载 xlsx 文件并在 vue 中显示出来?
- r - 如何在 R 中的 dplyr 包中保留分组变量的真实值
- entity-framework-core - 在实体框架核心中设置包含实体的 ID 的最佳实践是什么
- mysql - SQL - 从星期一到星期日按工作日排序 DATE_FORMAT
- python - 使用平均阈值过滤 DataFrame
- java - 如何使用java中的构造函数返回一个类?
- javascript - 检查具有属性的数组对象是否存在的最佳方法是什么?
- pandas - 如何从 DataFrame.groupby.rolling.apply 返回多个值?