<p>使用XPytha菜单栏和设置框。菜单是从缩进的文本文件生成的,我用它创建一个漂亮的嵌套菜单栏,每个菜单项都绑定到一个特定的函数。我有一个“切换状态栏”菜单检查项,它绑定到了toggleStatusBar()上。在</p>
<p>我想看看菜单项是否被选中并做出相应的反应,但我似乎无法从事件中访问菜单项。如果我使用GetId(),如何使用它来查找菜单项?我试过了事件.GetId(),但什么也没有。我也试过了事件.GetEventObject(),它返回了一个菜单,但不是一个菜单项。在</p>
<pre><code>def OnToggleStatusBar(self, event):
id = event.GetId()
menu = event.GetEventObject()
menuItem = menu.FindWindowById(id) #does not work
print self.FindByWindowId(id) # prints None
</code></pre>
<p>使用事件访问所需的数据。在</p>
<pre><code>print event.Id
print event.Selection # returns 1 if checked 0 if not checked
print event.IsChecked() # returns True if checked False if not checked
</code></pre>
<p>打印出包含以下内容的所有属性:</p>
^{pr2}$