matlab GUI-如何给GUI添加重置和退出功能

matlab GUI-如何给GUI添加重置和退出功能,第1张

上一篇介绍了如何控制GUI中按钮的开启与关闭,达到引导 *** 作者按顺序点击按钮的目的。那么,如果 *** 作者想要重新从头再 *** 作一遍,比如像昨天的例子, *** 作者对一张照片进行小波分解与重构后,又想对另一张照片进行小波分解重构,此时,就需要有一个“重置”按钮。

        还是以上一篇界面为例,当我们把“选择图像”、“小波分解”、“小波重构”按步骤 *** 作完后,界面如下图:

        此时,我们要点击进行重置的话,有三个方面:1.把“选择图像”、“小波分解”、“小波重构”三个按钮的开启与否的状态恢复到原来;2.把三个坐标轴中的图像清空;3.把“级数”和“全局阈值”和“压缩信息”对应的三个可编辑框中的数值恢复为默认值。

        话不多说,直接把“重置”按钮的回调函数放上来:

        我已经用红框把三部分给圈了出来。第一部分很好理解,我在注释中已经标注了。第二部分就是把三个坐标轴清空,用到的是 “cla reset”这个语句。此时要注意的是,坐标轴重置后会出现横纵坐标轴,如下图所示。而我们这里坐标轴是用来放图像的,所以还要添加set(handles.edit,'Xtick',[],'Ytick',[])把横纵坐标轴去掉。

       第三部分就是把“级数”和“全局阈值”和“压缩信息”对应的三个可编辑框中的数值恢复为默认值。默认把小波分解的级数设为2,把小波重构的全局阈值设为10。

        如果要做到严谨的话,对GUI进行重置还需要把程序中用到的变量都重新赋为初值。在这里我就不啰嗦了,因为这个例子不需要,反正把流程重新走一遍,程序中的变量都会被重新赋值的。

        最后说说退出GUI界面,很简单,一句“close all”就搞定了。

这样d的代码可以实现:

set (handles.axes1,'Xtick','off','Ytick','off')

其中

其中handles.axes1是你要设置坐标隐藏的坐标系的句柄

set(handles.axes1,'Xtick',[],'Ytick',[])

set(handles.axes1,'Xcolor',[1 1 1],'Ycolor',[1 1 1])

通过一个简单例子介绍图像输入与输出的 *** 作,给自学者参考借鉴。

1.创建一个新的空白的GUI。这个例子会用到静态文本、按钮、坐标轴和面板。先在界面中拖入一个静态文本,将其属性中的“string”一栏改为“输入输出图片示例”,字体大小调为20,如下图。

2.在界面中拖入两个面板,然后将两个面板的“string”一栏分别改为“输入图片”和“输出图片”。图像在GUI中都是显示在坐标轴控件上的,如果坐标轴控件没有放在面板控件中的话,显示出来的图像根据图像大小而变,而用面板把坐标轴框住,就可以固定住图像的大小,避免变来变去的。所以一般面板和坐标轴是搭配使用的。

3.再分别拖两个坐标轴到面板上,如图所示,调整好大小即可。双击打开坐标轴的属性,将它们的属性中“XTick”和“YTick”的值都改成0,因为坐标轴在显示的时候默认是有横纵坐标的,但是在这个例子中坐标轴用来显示图片,所以不需要横纵坐标。

4.再拖入四个按钮,将他们的“string”一栏分别改为“导入图片”、“添加高斯噪声”、“添加椒盐噪声”、“添加泊松噪声”,字体调为20。

5.进入按钮“导入图片”的回调函数,在回调函数中敲入如图的程序段。每一句程序的作用都标在图中了,这里不再重复啦。

6.进入按钮“添加高斯噪声”的回调函数,在回调函数中敲入如图的程序段。

7.进入按钮“添加椒盐噪声”的回调函数,在回调函数中敲入如图的程序段。

8.进入按钮“添加泊松噪声”的回调函数,在回调函数中敲入如图的程序段。

9.最后的结果就如下图所示了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11695280.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存