失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > matlab GUI学习笔记4 如何添加并设置下拉菜单以及GUI解决不用直接用load的问题

matlab GUI学习笔记4 如何添加并设置下拉菜单以及GUI解决不用直接用load的问题

时间:2024-05-17 22:27:26

相关推荐

matlab GUI学习笔记4 如何添加并设置下拉菜单以及GUI解决不用直接用load的问题

(1)输入“guide”新建一个GUI界面,在界面的左侧选择“弹出式菜单”添加到面板上

(2)选择需要编辑的下拉菜单,右键选择或双击打开“属性检查器”,在String中编辑下拉菜单内容。

(3)要实现下拉菜单的功能,需要对callback进行编辑,下拉菜单的tag一般默认为popupmenu1。但是需要注意的是,若点击pushbutton后需获取选择的内容,那么要把这段内容添加在pushbutton的callback里。

vall = get(handles.popupmenu1,'value');

switch vall

case 2

m = load('ping1.mat');

n = m.echo();

case 3

m = load('zhui1.mat');

n = m.echo();

case 4

m = load('duo1.mat');

n = m.echo();

end

需要注意的是,因为这里我留了一个可在框里显示的“选择类型”,往下才是我真正用到的类型,所以case要从2开始。case 1是选择类型。

(4)在使用下拉菜单的时候发现一个另外的问题,就是GUI界面不能直接用load加载数据,load加载出来的结果是一个struct结构值,并不是n*m的矩阵值。

查找之后发现可以使用下面这段语句,但是这段语句是弹出选择文件的对话框,然后将mat文件读取为适合GUI的数据格式,虽然在这里我没有用到但是还是一个蛮常用的功能,所以也在此记录下来。

filename = uigetfile('ping1.mat');

echo = cell2mat(struct2cell(load(filename)));

最后使用的方法就是下面这段代码,先load需要的.mat文件,得到STRUCT结构后,读取结构体的内容,此时m就是读取结构的句柄。

m = load('ping1.mat');

n = m.echo();

如果觉得《matlab GUI学习笔记4 如何添加并设置下拉菜单以及GUI解决不用直接用load的问题》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。