Tkinter Optionmenu 回调失效

3 投票
1 回答
1293 浏览
提问于 2025-04-17 03:05

我不知道为什么这个选项菜单(optionmenu)没有调用回调函数。这个小部件需要特别处理吗?(这个函数本身是可以工作的,我可以通过按钮来调用它。)

self.shapemenu=Tkinter.OptionMenu(self.frame,self.shape,"rectangle", "circular", command=self.setshape)

self.shape 是一个 Tkinter.StringVar,显然 setshape 是回调函数。

我在这里做错了什么呢?

1 个回答

6

选项菜单是用来设置一个值的,而不是用来执行某个操作的。你不能给它分配一个命令,如果你这样做了,就会破坏它设置值的默认功能——它内部使用命令选项来管理这些值。

如果你想在值改变时让某些事情发生,可以在StringVar上添加一个跟踪。

撰写回答