MATLAB制作GUI(3)-下拉列表的实现

11 篇文章 10 订阅

今天我们打算使用MATLAB中的GUI功能制作一个函数曲线绘制的GUI,其中将会讲到下拉列表的实现这一新的功能,下面是我实现的GUI的界面:

创建过程很简单, 具体的过程我就不在这里详细介绍,在GUI编辑功能中的样子是下面这样的,其中使用了下拉列表、可编辑文本、静态文本、按钮、图像显示框等功能:

 这里我将详细介绍下拉列表功能的实现,添加下拉列表组件之后,双击会出现相应的检查器,设置下拉列表的内容:

点击箭头指向的按钮,会出现下拉列表内容编辑器,在其中输入自己想设置的内容,每一行为一个选项,第一行为默认显示的内容:

在这个例子中,我们添加了两个下拉列表选项,分别设置曲线的颜色和大小。下面我们就要实现相应的功能了:

首先我们要实现下拉列表内容的读取,因此我们就要修改下拉列表的Callback函数内容:

通过get函数获取我们所选择的下拉列表中的内容,注意:这里很容易产生误区,以为我们获取的是我们填入其中的内容,如‘红色’、‘黑色’、‘蓝色’等其实我们这里获取的不是其内容,而是行号,第一行的行号为1,第二行为2,以此类推,因此函数为get(handles.popupmenu1,'Value')。因为Lc的值我们在其他的函数中进行调用,因此我们使用了全局变量global。两个下拉列表的Callback函数是类似的。

最后,我们定义按钮的Callback函数,实现整个GUI的功能:

注意:因为我们绘制的是隐函数的曲线,因此要使用ezplot函数进行绘制。

最后实现了绘制函数曲线的GUI:

最后,我们再实现一个小功能:当鼠标初次点击可编辑文本时,清除其中的指示内容,本例中的是“请输入函数”。

这是我们要定义可编辑文本的另一个函数edit2.ButtonDownFcn函数,该函数是当鼠标点击edit2时实现的其中的函数功能:

首先我们要先将edit2的Enable属性设置为‘inactive'(inactive,ButtonDownFcn函数有效;off和on时,ButtonDownFcn都无效,然而off时不可以进行编辑,on时可以进行编辑),之后更改edit2.ButtonDownFcn函数:

当点击可编辑文本时,set函数先将其中的内容清除,在使用uicontrol函数将鼠标聚焦在可编辑文本中(如果不理解什么意思,可以自己试一下有无这个函数的效果)。

 

  • 26
    点赞
  • 180
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值