zoukankan      html  css  js  c++  java
  • Matlab GUI设计中的一些常用函数

    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
    ');
    		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:HYHCVPrtScn';
            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()函数。

  • 相关阅读:
    PL/SQL快捷键
    <c:if>条件判断 和 取值做乘法运算
    文档保存后找不到了误以为丢失,重做!
    Gson将参数放入实体类中进行包装之后再传递
    [leedcode 66] Plus One
    [leedcode 65] Valid Number
    [leedcode 64] Minimum Path Sum
    [leedcode 63] Unique Paths II
    [leedcode 62] Unique Paths
    [leedcode 61] Rotate List
  • 原文地址:https://www.cnblogs.com/naive/p/3568888.html
Copyright © 2011-2022 走看看