使用 wxpython 创建菜单
Creating menus using wxpython
我使用以下方法创建了一个菜单:
fileMenu = wx.Menu()
fileMenu.Append(ID_NEW, "&New\tCtrl+N", "Creates a new file")
我可以通过在菜单上单击它或单击 Ctrl+N 来访问新建。
我的问题是:& 代表什么?
如果我删除它,一切仍然有效。然而,所有指南仍在使用它,其中 none 解释了它的用途。
我也在这里读过:
http://wxpython.org/Phoenix/docs/html/MenuItem.html#MenuItem.SetItemLabel
"An accelerator key can be specified using the ampersand & character ... Optionally you can specify also an accelerator string appending a tab character \t followed by a valid key combination"
所以根据这个,如果我使用\t,就不需要使用&。
有人可以确认我的结论是否正确吗?我只是不明白为什么我总是看到两者......每个人都这样使用它一定是有原因的。
菜单标题中的 &
字符表示一个快捷键,您可以在菜单打开时按下该快捷键以快速访问该项目。这仅在菜单打开并获得焦点时有效。您会在项目标题中看到带下划线的字符作为助记符。同样适用于顶级菜单条目,例如 'File' 或 'Edit':根据标准 WIMP 惯例,您可以使用 Alt-F 打开所述菜单(如果 F 是文件的加速键)和如果该菜单中有 C 的快捷键,则同样快速地按 'C'。这些天来很快,但鲜为人知。
\t
在传统上下文和菜单项中表示选项卡,它将在您的框架中创建一个 全局 快捷方式,您可以在菜单未激活的情况下按下该快捷方式。
&
后面的快捷方式字母只能从菜单访问。
\tCtrl+N
在整个应用程序中可用,快捷方式显示在菜单项旁边。
我使用以下方法创建了一个菜单:
fileMenu = wx.Menu()
fileMenu.Append(ID_NEW, "&New\tCtrl+N", "Creates a new file")
我可以通过在菜单上单击它或单击 Ctrl+N 来访问新建。
我的问题是:& 代表什么?
如果我删除它,一切仍然有效。然而,所有指南仍在使用它,其中 none 解释了它的用途。 我也在这里读过: http://wxpython.org/Phoenix/docs/html/MenuItem.html#MenuItem.SetItemLabel
"An accelerator key can be specified using the ampersand & character ... Optionally you can specify also an accelerator string appending a tab character \t followed by a valid key combination"
所以根据这个,如果我使用\t,就不需要使用&。 有人可以确认我的结论是否正确吗?我只是不明白为什么我总是看到两者......每个人都这样使用它一定是有原因的。
菜单标题中的 &
字符表示一个快捷键,您可以在菜单打开时按下该快捷键以快速访问该项目。这仅在菜单打开并获得焦点时有效。您会在项目标题中看到带下划线的字符作为助记符。同样适用于顶级菜单条目,例如 'File' 或 'Edit':根据标准 WIMP 惯例,您可以使用 Alt-F 打开所述菜单(如果 F 是文件的加速键)和如果该菜单中有 C 的快捷键,则同样快速地按 'C'。这些天来很快,但鲜为人知。
\t
在传统上下文和菜单项中表示选项卡,它将在您的框架中创建一个 全局 快捷方式,您可以在菜单未激活的情况下按下该快捷方式。
&
后面的快捷方式字母只能从菜单访问。
\tCtrl+N
在整个应用程序中可用,快捷方式显示在菜单项旁边。