MATLAB GUI笔记(八):列表框的使用

本文档详细介绍了如何在MATLAB GUI中使用列表框进行交互操作,当选择列表框中的选项时,不仅显示所选字符串,还会显示对应参数的行向量。通过创建Callback函数,实现了选中列表项时,在编辑框中同步显示选中内容,并将对应参数存储在handles结构体中,以便进一步用于绘制图像。整个过程涉及GUI组件属性配置、回调函数编写及数据传递。

笔记八是简单介绍列表框的使用,其功能和按钮组类似。

1. 打开GUI

选择Blank GUI,然后更改保存路径
在这里插入图片描述

2. 点击列表框

然后拖动出来,同样把三个按钮、两个可编辑文本和坐标区,拖动出来
在这里插入图片描述

3. 双击列表框菜单看它的属性

改变字体大小和显示内容
在这里插入图片描述

4. 双击按钮查看它的属性

更改字体大小和显示内容
在这里插入图片描述
同样更改另外两个按钮

5 点击可编辑文本

更改字体大小和显示内容
在这里插入图片描述

6. 点击列表框

右键按钮,查看回调,选择CreateFcn
创造函数,通过这个函数实现选中某个选项后不仅选中了对应选项的字符串,还选中了该选项对应的行向量。
在这里插入图片描述
在这里插入图片描述
这里是为了在列表框中选中选项的时候,不仅选中了这个选项的字符串,还选中了这个字符串代表的实际参数行向量。

%% 当listbox刚被创建时,定义四组参数的值
t=0:0.01:2*pi;
canshu1 = t;
canshu2 = sin(t);
canshu3 = cos(t);
canshu4 = sin(t)+cos(t);
CS = {canshu1,canshu2,canshu3,canshu4} %% 将四组参数保存在cell中
handles.CS = CS;%% 将CS保存到handles结构体中
guidata(hObject,handles);%%更新和保存handles结构体

7. 右键按钮

点击查看回调,选择Callback
在这里插入图片描述
在这里插入图片描述
将选中的选项显示在edit中

%% 获得列表框选中的选项的值,就是选项的行数
selected_index = get(handles.listbox1,'Value');
% 获得列表框选项的所有内容,是cell结构
str = get(handles.listbox1,'String');
% 将选中选项的内容赋值给edit1
set(handles.edit1,'String',str{selected_index});
% 将选中选项对应的参数行向量赋值给x
x = handles.CS{selected_index};
handles.x = x;%% 将x保存到handles结构体中
guidata(hObject,handles);%%更新和保存handles结构体

同样,另一个参数按钮也是相同的操作,找到它的回调函数,Callback

%% 获得列表框选中的选项的值,就是选项的行数
selected_index = get(handles.listbox1,'Value');
% 获得列表框选项的所有内容,是cell结构
str = get(handles.listbox1,'String');
% 将选中选项的内容赋值给edit2
set(handles.edit2,'String',str{selected_index});
% 将选中选项对应的参数行向量赋值给
y = handles.CS{selected_index};
handles.y = y;%% 将y保存到handles结构体中
guidata(hObject,handles);%%更新和保存handles结构体

打开绘制图像按钮的Callback函数
在这里插入图片描述

%% 将图像绘制在axes1上
axes(handles.axes1);        % 设置axes1为当前绘制区
plot(handles.x,handles.y);  % 绘制图像
axis equal;                 % x,y轴等宽

8. 结果显示

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源源儿~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值