3

目标

了解 Tkinter 菜单中的单选按钮如何工作

代码

我在选项菜单中有一个单选按钮,如下所示:

v = BooleanVar()

v.set(True)

options.add_radiobutton(label="change pop up", command =togglePopUp,variable=v,onvalue=True,offvalue=False)

togglePopUp是一个函数,将变量的值v从更改True为,False反之亦然。主窗口已打开,此菜单稍后将添加到窗口中。这只是与单选按钮相关的代码片段。

问题

现在我的问题是当我按下单选按钮时(在运行代码之后)变量的值会被改变还是会调用函数 togglePopUp?如果将调用该函数,那么单选按钮的状态会怎样?单选按钮的状态会立即更新还是会有延迟?

研究

我从 effbot.org 的 Tkinter 书中了解了单选按钮和布尔变量。但我不相信它是如何工作的。我尝试了一个程序,但没有得到我想要的输出。所以我决定更深入地了解它是如何工作的。

规格python 2.7 Tkinter 8.5 Linux Mint 14

4

1 回答 1

3

这两个动作都会发生。当您单击单选按钮时,首先变量将更改其值,然后command调用作为选项传递的事件处理程序(如果存在)。

您的示例也不起作用,因为add_radiobutton不允许onvalueandoffvalue选项 - only value

于 2013-03-30T23:44:08.513 回答