笔记八是简单介绍列表框的使用,其功能和按钮组类似。
目录
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. 结果显示




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

被折叠的 条评论
为什么被折叠?



