【问题标题】:Callback for Menu to list Submenu items in Matlab GUI回调菜单以在 Matlab GUI 中列出子菜单项
【发布时间】:2014-09-08 21:53:51
【问题描述】:

我为我的 Matlab GUI 创建了菜单,它是“文件”,子菜单是打开、保存和退出。 当我点击文件菜单时,它会列出子菜单项打开、保存和退出。

当我按下“Alt+F”时,我想为此文件菜单分配一个快捷键,而不是单击文件菜单,它会显示子菜单项的列表。我不想使用指南提供的快捷键选项,我想硬编码那个快捷键。

我已经为按键检测 (Alt+F) 的组合进行了编码,但是必须使用哪个函数/回调来列出子菜单项?

【问题讨论】:

    标签: matlab user-interface keyboard-shortcuts


    【解决方案1】:

    https://ece.uwaterloo.ca/~nnikvand/Coderep/gui%20examples/GUI.pdf 第 37 页

    MATLAB 菜单支持加速键和键盘助记符。加速键是"CTRL+key" 组合,可导致在不先打开菜单的情况下执行菜单项。

    例如,加速键 key "0" 可能分配给文件/打开 菜单项。在这种情况下,键盘组合CTRL+o会导致File/Open回调函数被执行。

    一些CRTL+key 组合保留供主机操作系统使用。

    这些组合在 PC 和 UNIX 系统之间有所不同;请查阅 MATLAB 在线文档以确定哪些组合对于您的计算机类型是合法的。通过在 uimenu 对象中设置 Accelerator 属性来定义加速键。

    键盘助记符是单个字母,一旦打开菜单,就可以按下它来执行菜单项。给定菜单项的键盘助记符带有下划线。对于顶级菜单,键盘助记符是通过同时按下ALT加助记键来执行的。打开顶级菜单后,只需按助记键即可执行菜单项。图 1.29 说明了键盘助记符的使用。文件菜单使用键ALT+f打开,打开后,只需键入"x"即可执行退出菜单项。

    键盘助记符是通过在 Label 属性中所需的助记符前面放置 & 符号 (&) 来定义的。 & 号不会显示,但下面的字母会带下划线,它会充当助记键。例如,图 1.29 中 Exit 菜单项的 Label 属性为'E&xit'

    【讨论】:

    • 您需要使用段落,因为单个大块文本很难阅读。要创建段落,请使用两个回车符,或者对于单个新行,在上一行的末尾添加两个空格
    猜你喜欢
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多