MATLAB GUI设计之弹出式菜单的使用

本文详细介绍了MATLAB GUI设计中弹出式菜单的创建与调用方法,包括如何在GUI中设置弹出式菜单内容、如何通过函数获取用户选择的值,并提供了一个实例应用——选择不同波特率的场景。

弹出式菜单在MATLAB GUI设计中常常出现。比如串口助手、绘制图形等经常见到弹出式菜单如下图所示:
这里写图片描述

使用方法:
一、准备工作

1、从MATLAB GUIDE中拖出一个弹出式菜单
这里写图片描述

2、双击这个弹出式菜单,出现检查器:
这里写图片描述
将注意力放在途中红线位置处,点击string处的图标将其中的内容修改为你想要显示的内容:
这里写图片描述
tag处的内容修改为自己想管这个弹出式菜单的名字。这里就按照原来的名字popupmenu5来说明。

二、在GUI中如何调用
在你想调用这个弹出式菜单中的内容的时候,使用函数

get(handles.popupmenu5, 'value')

其中,handles是句柄,而popupmenu5就是表明这个弹出式菜单的唯一名称,通过这句话,就能得到你选择的是弹出式菜单的第几个值。

强调:这里得到的值是你选择的第几个值,比如我选择上图所示的second,那么这句函数得到的值就是2.

可以理解为这个弹出式菜单是一个“数组”,你选择的是第几个元素,那么上述的函数返回的就是这个元素在这个“数组”中所在的位置。

那么,如何才能得到你看到的值作为你要获取的值呢:

你可做如下的操作,比如我要做一个选择波特率的弹出式菜单;

那么我可以事先做一个这样的波特率数组:

rates = [2400 4800 9600 115200 460800];

然后调用get函数,获取所在的位置

baud_rate = rates(get(handles.popupmenu5, 'value'));

如此操作之后,你在GUI界面上看到的波特率是多少,你实际获得的波特率也会是多少,然而我们并不是直接读取的string里面的值,而是通过获取元素所在弹出式菜单中的位置,然后从我们设定的数组中读出其真实的值,不失为一个巧妙的办法!


修改于2018年12月23日
感谢weixin_43868829Daniel__Shi同学指出博客中的错误,现已修正,欢迎大家交流~~~

评论 18
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值