本期主要介绍4个控件:列表框(Listbox)、进度条(Slider)、复选框(Check box)和开关按钮(Toggle Button)。

这几个控件用法相对不难,这里不多做介绍。

实例1:自主绘图

<实例功能>

给出1个数据文件列表,右边设置一些绘图选项,比如绘制数据量,是否显示标题、横纵坐标,用户根据需要自主进行绘制。

<实现过程>

1.新建1个GUI

在命令窗口输入“guide”,回车,在弹出的窗口中选择“空白GUI(Blank GUI(Default))”,点击“OK”,新的GUI创建完成。这里,新的GUI命名为“PlotOwn_test.fig”

2.布局控件

本实例的实现由2部分组成:数据列表区、自主绘制区。数据列表区用于数据文件的显示,这里用列表框(Listbox)来实现;自主绘制区用来进行绘制设置,这里用进度条(Slider)、复选框(Check box)和开关按钮(Toggle Button)来组合实现。具体布局如下图所示:

3.设置属性

本实例功能比较简单,主要设置字符(String)和句柄(Tag)两个属性。具体设置如下:

①设置面板(Panel)属性

字符(String):“数据列表区”(自主绘制区)。

②设置列表框(Listbox)属性

字符(String):“数据列表;sin_xy.dat;cos_xy.dat;tan_xy.dat”;(“数据列表”只用于提示)

句柄(Tag):Data_list。

③设置编辑文本(Edit Text)属性

字符(String):“100”;(默认全绘)

句柄(Tag):DataNum_edit。

④设置进度条(Slider)属性

句柄(Tag):DataNum_slider;

值(Value):1。(默认全绘)

⑤设置复选框 (Check Box)属性

字符(String):“显示标题(显示X轴标签、显示Y轴标签)”;

句柄(Tag):Title_display(Xlabel_display、Ylabel_display)。

⑥设置开关按钮(Toggle Button)属性

字符(String):“绘制/关闭”;

句柄(Tag):Plot_Close。

设置完成,布局图如下图所示:

4.编辑回调函数

这里实现的功能很简单,主要是获取用户的选择。用户的选择分为两部分,一是数据,二是绘制选项设置。数据读取列表框状态即可得到,绘制选项设置则需要依次读取自主绘制区各选项的状态。这里进度条和编辑文本的联动是一个难点,需要二者彼此根据对方状态进行响应,从而保持状态值一致。

具体代码如下:

①进度条和编辑文本的联动

②绘制/关闭按钮的实现

运行程序,效果如下:

实例2:GUI例程合集

<实例功能>

这个实例是对第二辑所有实例的一个集成,做了一个调度面板。通过该GUI,可以实现对所有例程的调用和运行,同时也是对多GUI运用的一个介绍。

实例较为简单,这里不再详细介绍,只是简单展示一下。相信大家通过以前的学习,可以轻松理解。

这里实现多GUI的调用是直接在回到函数里通过GUI名称调用的。不涉及数据交互,如果要实现多GUI的数据交互,可以通过对外部公共文件的读写操作来实现,这里不再赘述。

运行程序,效果如下:

有关Matlab GUI的知识就介绍到这,希望对大家有所助益,水平有限,不足之处敬请见谅!