Matlab GUI常用函数总结

% — 文件的打开、读取和关闭
% — 文件的保存
% — 创建一个进度条
% — 在名为display的axes显示图像,然后关闭
% — 把数字转化为时间格式
% — checkbox的callback函数
% — 图像识别处理相关的两个函数
% — 点击图像,调用函数
% — montage

% --- 文件的打开、读取和关闭 ---
try
[FileName,PathName] = uigetfile('*.raw','Select an image file');
FID = fopen(strcat(PathName,FileName));
readNum = 100000;
fseek(FID, 0,'bof');
[data,length] = fread(FID,readNum, 'int16');
fclose(FID);
catch err
warning = msgbox('Fail to open file.','Warning','warn');
fclose(FID);
end % --- 文件的保存 ---
[file,path] = uiputfile('*.mat','Save Mask As');
save(strcat(path,file),'mask'); % --- 创建一个进度条 ---
wait = waitbar(0.1,'Loading data from disk...');
waitbar(0.2,wait);
waitbar(1.0,wait);
close(wait); % --- 在名为display的axes显示图像,然后关闭 ---
img = imagesc(data, 'Parent',handles.display);
close img; % --- 把数字转化为时间格式 ---
function str = convertTime(time)
sec = num2str(mod(time,60000)/1000,'%6.3f\n');
min = num2str(floor(time/60000));
str = strcat(min,':',sec); % --- checkbox的callback函数 ---
checked = get(handles.checkbox,'Value');
if(checked)
%已选中,将方框打钩
set(handles.checkbox,'Value',1);
else
%未选中,方框的钩去除
set(handles.checkbox,'Value',0);
end % --- 图像识别处理相关的两个函数 ---
% 图像pic一般是二值图像
se = strel('ball',6,6);
%erode image
pic = imerode(pic,se);
%dilate image
pic = imdilate(pic,se); % --- 点击图像,调用函数 ---
img = imagesc(data, 'Parent',handles.display);
%点击图像区域,触发该图像的ButtonDownFcn函数,执行adjustMask()函数
set(img,'ButtonDownFcn',{@adjustMask}); %adjustMask函数定义
function adjustMask(hObject, eventdata)
handles= guidata(hObject);
... % --- Montage function usage ---
fileFolder = 'C:\ZHYH\CV\PrtScn';
dirOutput = dir(fullfile(fileFolder,'AP_m*.jpg'));
fileNames = {dirOutput.name}';
montage(fileNames);

新窗口初始化的内容放在OpeningFcn(hObject, eventdata, handles, varargin)的结尾,不会报错。

巧妙地使用按键的‘Enable’属性,可以有效避免误操作引起的麻烦。

设置一些必要的bool类型的标记,表示程序的运行状态。

在一个窗口window打开新的窗口new_window,可以新建一个new_window的.fig和.m的文件,然后在window的代码中直接调用new_window()函数。

Matlab GUI设计中的一些常用函数的更多相关文章

  1. MATLAB GUI 设计要点 转

    https://www.cnblogs.com/wangh0802PositiveANDupward/p/4588512.html 从简单的例子说起吧. 创建Matlab GUI界面通常有两种方式: ...

  2. 【PHP】最详细PHP从入门到精通(三)——PHP中的数组常用函数汇总

     PHP从入门到精通 之PHP中的数组常用函数详解 数组作为PHP中最常用的结构之一,PHP强大的数组函数功能,给数组的相关操作带来了极大的便利.今天给大家介绍的PHP中数组函数,是PHP数组中重要的 ...

  3. php中文件操作常用函数有哪些

    php中文件操作常用函数有哪些 一.总结 一句话总结:读写文件函数 判断文件或者目录是否存在函数 创建目录函数 file_exists() mkdir() file_get_content() fil ...

  4. SQL Server中截取字符串常用函数

    SQL Server 中截取字符串常用的函数: .LEFT ( character_expression , integer_expression ) 函数说明:LEFT ( '源字符串' , '要截 ...

  5. c++中string的常用函数说明

    string可以说是是字符数组的升级版,使用更加啊方便,不容易出错.本文对string的常用函数进行简单介绍,做到会用即可. string中的常用函数分为四类,即赋值,添加,比较和删除. 一.赋值 1 ...

  6. Ruby中Time的常用函数

      Time的常用函数 时间对象. Time.now返回当前时间. 1.Time.at Time.at(time[, usec]) 返回time所指时间的Time对象. time可以是Time对象,也 ...

  7. c++ <string.h>中包括哪些常用函数

    常用函数如下:strlen  求字符串长度strcmp  比较2个字符串是否一样strcat           字符串连接操作strcpy            字符串拷贝操作strncat     ...

  8. Java的GUI设计中如何跨界面传值

    在Java设计中我们会遇到登录界面的信息,在后面的某个情况也需要使用. 比如这是笔者的一个登录界面 可以看到获取密码和账号 在这个时候的功能的完成需要密码和账号 // 登录信息的获取 public S ...

  9. 机器学习中的python常用函数

    glob模块 说明: 1.glob是python自己带的一个文件操作相关模块,用它可以查找符合自己目的的文件,就类似于Windows下的文件搜索, 支持通配符操作 *.?.[] 这三个通配符,*代表0 ...

随机推荐

  1. centos 升级 python后 python-setuptools pip 安装依赖报错

    解决办法: $ wget https://svn.apache.org/repos/asf/oodt/tools/oodtsite.publisher/trunk/distribute_setup.p ...

  2. 微信支付调用JSAPI缺少参数:timeStamp

    一般是安卓没问题,苹果会出现这样的问题,弹出下面这样的提示,如果你也是这样,那就恭喜你,现在,你找到解决的方法了 请看红色框框的timeStamp(图片有点小,可以鼠标右键打开图片 查看) 请注意,这 ...

  3. 屏蔽Win10升级通知方法

    对于有系统洁癖的我来说,不喜欢还原和自动升级,我更乐意使用全新安装的方式来装系统! 据说微软也知道这种方式有时候的确很讨人嫌,因此就低调的在美国微软社区中给出了屏蔽这项通知的官方"大法&qu ...

  4. 使用OTT处理oracle中的对象(一) OTT配置

    OTT是OCI中访问对象类型数据的重要工具,它将数据库中的对象数据类型或集合类型映射为C++中的结构体类型.OTT是Oracle自带的,但是使用前必须配置一下环境变量.在计算机->属性-> ...

  5. Thread IsBcakgroud

    C#中,Thread类有一个IsBackground 的属性.MSDN上对它的解释是:获取或设置一个值,该值指示某个线程是否为后台线程.个人感觉这样的解释等于没有解释. .Net中的线程,可以分为后台 ...

  6. C# WebBrowser NativeMethods

    using System; using System.Collections.Generic; using System.Drawing; using System.Linq; using Syste ...

  7. Android开发-开发前的配置

    一.JDK   (不用安装) JDK是 java 语言的软件开发工具,主要用于移动设备.嵌入式设备上的java应用程序. JDK是整个java开发的核心,它包含了JAVA的运行环境,JAVA工具和JA ...

  8. AJAX笔记

    浏览器脚本——AJAX AJAX =  异步的 JavaScript 和 XML(Asynchronous JavaScript and XML). 是一种新的技术,它可以创建更好.更快且交互性更强的 ...

  9. c#图像处理入门(-bitmap类和图像像素值获取方法) 转

    一.Bitmap类 Bitmap对象封装了GDI+中的一个位图,此位图由图形图像及其属性的像素数据组成.因此Bitmap是用于处理由像素数据定义的图像的对象.该类的主要方法和属性如下: 1. GetP ...

  10. opencv中的Mat类型

    Mat类型主要是跟matlab中的数据类型一样.故用起来很方便. Mat最大的优势跟STL很相似,都是对内存进行动态的管理,不需要之前用户手动的管理内存,对于一些大型的开发,有时候投入的lpImage ...