MATLAB制作GUI(2)-菜单切换功能

在第一篇中我们已经介绍了基本GUI的制作方法,下面我将介绍可以实现两个菜单之间切换地GUI。

首先,在命令行通过guide函数进行创建界面,选取blank模板,进入GUI编辑模板:

MATLAB制作GUI(2)-菜单切换功能

之后进入工具栏中的菜单编辑器:

MATLAB制作GUI(2)-菜单切换功能

 创建两个菜单,在菜单属性栏中我们可以修改菜单的名称、标记,添加快捷方式等功能:

 

MATLAB制作GUI(2)-菜单切换功能

修改完成之后,点击查看按钮进行保存。 再次进入GUI编辑界面,这时我们创建一个上篇博客讲的计算器(具体过程参照上篇博客):

MATLAB制作GUI(2)-菜单切换功能

创建完成之后,我们要修改其属性,将所有的可编辑文本、静态文本和按钮的Visible性质改为Off:

MATLAB制作GUI(2)-菜单切换功能

 这时候,我们运行创建的GUI,发现操作界面之后两个菜单选项,刚刚创建的计算器没有显现出来:

MATLAB制作GUI(2)-菜单切换功能

这时候找到GUI的代码, 我们会看到在menu1_Callback和menu2_Callback两个函数,我们想让点击菜单1时显示出计算器,因此我们要在menu1_Callback函数中修改创建的计算器的组件的可见性:

MATLAB制作GUI(2)-菜单切换功能

这时运行GUI后,点击菜单1后,会显示我们创建的计算器,但是此时的计算器中“徒有其表”,且不能实现。下面就是实现计算器的功能,集体步骤参照上篇博客:

MATLAB制作GUI(2)-菜单切换功能

下面,我们为菜单2制作一个图像二值化GUI。首先,仍然是在GUI编辑界面进行GUI组件的初步设计,如下是添加二值化GUI后的样子,同样将添加的所有组件的visible性质改为off:

MATLAB制作GUI(2)-菜单切换功能

 同样,在menu2_Callback函数中修改各个组件的visible性质:

MATLAB制作GUI(2)-菜单切换功能

现在要实现图像二值化GUI的功能,在pushbutton2_Callback函数下面添加相关命令:

MATLAB制作GUI(2)-菜单切换功能

其中uigetfile函数是读取图片的命令,在显示图片之前首先要**显示窗口,axes(handles.axes1)就是将axes1**以显示图片。 

MATLAB制作GUI(2)-菜单切换功能

至此,我们实现了两个菜单切换的GUI,但是在菜单切换的过程中,会出现界面重叠的情况,因此我们还要在menu1_Callback和menu2_Callback函数中将另一个GUI中的组件的visible性质改为off,这样就可以实现切换界面的时候关闭原来的界面:

MATLAB制作GUI(2)-菜单切换功能

MATLAB制作GUI(2)-菜单切换功能

 至此我们完成了所有的工作,希望大家能从中学到一些知识!!!不早了,回宿舍休息!!!