% 常使用的对象查看和设置函数
% .get、set函数
get() % 获得句柄值为0的对象的属性,即显示器对象属性 plot([:]); % 绘制一幅图
title('示例'); % 增加text对象 % 获得figure的所有子对象
allchild(gcf) % 查看子对象类型
get(ans()) % type属性可以看到子对象类型 % 获得静态文本“示例”的句柄并进行设置
h = findobj(allchild(gca), 'String', '示例');
set(h, 'FontSize', , 'FontWeight', 'bold');

GUI 1

findobj:特殊属性的图形对象 (doc findobj)

语法:

1.findobj:

findobj返回根对象的句柄和所有子对象(findobj returns handles of the root object and all its descendants without assigning the result to a variable.)

2.h = findobj:

返回根对象的句柄和所有子对象

3.h = findobj('PropertyName',PropertyValue,...)

返回所有属性名为‘PropertyName’,属性值为'PropertyValue'的图形对象的句柄。可以指定多个属性/值对。

4.h = findobj('PropertyName',PropertyValue,'-logicaloperator', PropertyName',PropertyValue,...)

 -logicaloperator可以取值:

-and

-or

-xor

-not

5.h = findobj('-regexp','PropertyName','regexp',...)

属性名可以使用正则表达式

6.h = findobj('-property','PropertyName')

如果存在‘PropertyName’这个属性名,就返回此图形句柄

7.h = findobj(objhandles,...)

限制搜索范围为objhandles和他们的子图中

8.h = findobj(objhandles,'-depth',d,...)

指定搜索深度,深度参数'd'控制遍历层数,d为inf表示遍历所有层,d为0等同d='flat'

9.h = findobj(objhandles,'flat','PropertyName',PropertyValue,...)

'flat'限制搜索范围只能是当前层,不能搜索子图。

如果句柄指向一个不存在的图形,findobj返回一个错误。

findobj正确匹配任何合法属性值,例如:

findobj('Color','r')

找到所有color值为红的对象。

为了寻找满足指定条件的额handle对象,我们可以使用handle.findobj。

例子:

在当前坐标下查找所有直线对象:
h = findobj(gca,'Type','line')  %gca为当前坐标的句柄

查找Label属性设为'foo'和String设为'bar'的所有对象:
h = findobj('Label','foo','-and','String','bar');

查找String不为'foo'也不为'bar'的所有对象:

h = findobj('-not','String','foo','-not','String','bar');

h = findobj('String','foo','-and','Tag','button one',...
 '-and','-not',{'Color','red','-or','Color','blue'})

Find all objects for which you have assigned a value to the Tag property (that is, the value is not the empty string ''):
h = findobj('-regexp','Tag','[^'']')

Find all children of the current figure that have their BackgroundColor property set to a certain shade of gray ([.7 .7 .7]). This statement also searches the current figure for the matching property value pair.
h = findobj(gcf,'-depth',1,'BackgroundColor',[.7 .7 .7])

GUI

 % 对象操作示例
% h= figure ; get(h);
%获取能够使用的句柄
hf = figure('Units', 'Normalized', ...
'Position', [0.2 0.3 0.5 0.5], ...
'Menu', 'none'); ha = axes('Parent', hf, 'Units', 'Normalized', ...
'Position', [0.1 0.1 0.8 0.8]); hl = line('Parent', ha, 'XData', [:0.01:], ...
'YData', sin([:0.01:]), 'Color', 'r', ...
'LineWidth', ); cstring = 'gbkmy'; for k = :
pause();
set(hl, 'Color', cstring(k));
end

2

 % 底层代码实现GUI
hf = figure(...
'Units', 'Normalized', ...
'Position', [0.2 0.2 0.6 0.5], ...
'Menu', 'none', ...
'Color', 'w'); ha = axes('Parent', hf, ...
'Units', 'Normalized', ...
'Position', [0.1 0.1 0.6 0.8], ...
'Box', 'off', ...
'NextPlot', 'add'); hb1 = uicontrol('Parent', hf, ...
'Units', 'Normalized', ...
'Position', [0.75 0.2 0.15 0.1], ...
'Style', 'pushbutton', ...
'String', 'sin', ...
'Callback', 'plot(sin([0:0.01:6]))'); hb2 = uicontrol('Parent', hf, ...
'Units', 'Normalized', ...
'Position', [0.75 0.4 0.15 0.1], ...
'Style', 'pushbutton', ...
'String', 'cos', ...
'Callback', 'plot(cos([0:0.01:6]))'); hb3 = uicontrol('Parent', hf, ...
'Units', 'Normalized', ...
'Position', [0.75 0.6 0.15 0.1], ...
'Style', 'pushbutton', ...
'String', 'clear', ...
'Callback', 'try,delete(allchild(ha));end');

GUI 3

 % 常用对象的属性
% % .figure
% hf = figure;
% get(hf);
%
% % 改变颜色
% set(hf, 'Color', 'w');
% set(hf, 'Menubar', 'none');
% set(hf, 'NumberTitle', 'off', 'Name', '演示');
% set(hf, 'ReSize', 'off');
% pause()
% set(hf, 'Visible', 'off');
% pause()
% set(hf, 'Visible', 'on');
%
% set(hf, 'WindowStyle', 'modal');
%
% set(hf, 'WindowKeyPressFcn', 'closereq');
%
% set(hf, 'WindowButtonDownFcn', 'closereq');
%
% hb = uicontrol('Style', 'pushbutton', 'Callback', 'closereq'); % .axes
ha = axes;
get(ha)
set(ha, 'NextPlot', 'add');
plot([:]); plot(sin(:0.01:));

GUI 4

 % text
hf = axes;
ht = text(, , '示例'); get(ht) text('String', '\int_0^x dF(x)', 'Position', [0.5 .]); text('interpreter', 'latex', 'String', '$$ \int_0^x dF(x) $$', 'Position', [0.2 .]); % 原始的语句写出来
plot(x);
% 在原始语句两遍加上单引号
'plot(x);'
% 当原始语句中含有引号,那么将原始的单引号都改为两个单引号,然后再最外层加上一对单引号
'plot(x, y, ''r'');'

GUI 5

 % text
hf = axes;
ht = text(0.1, , '示例'); get(ht) text('String', '\int_0^x dF(x)', 'Position', [0.5 .]); text('interpreter', 'latex', 'String', '$$ \int_0^x dF(x) $$', 'Position', [0.2 .]); % 原始的语句写出来
plot(x);
% 在原始语句两遍加上单引号
'plot(x);'
% 当原始语句中含有引号,那么将原始的单引号都改为两个单引号,然后再最外层加上一对单引号
'plot(x, y, ''r'');'

GUI6

 % uigetfile
uigetfile doc uigetfile % 规定打开文件类型
uigetfile('*.m'); % 输出参数意义
[a, b, c] = uigetfile('*.m'); [a, b, c] = uigetfile('*.txt');
if c ==
load(fullfile(b, a));
end uigetfile('*.m', '实例', 'default.m'); % uiputfile
uiputfile doc uiputfile
[a, b, c] = uiputfile('*.m');

GUI 7

 % 颜色设置对话框
uisetcolor doc uisetcolor c = uisetcolor; c = uisetcolor([ ]); h = plot([:]);
c = uisetcolor(h); figure;
b = uicontrol('Parent', gcf, 'String', '颜色设置', 'Style', 'pushbutton', 'Callback', ...
'c = uisetcolor; set(b, ''BackgroundColor'', c);'); % 字体设置对话框
uisetfont doc uisetfont S = uisetfont(b); figure;
b = uicontrol('Parent', gcf, 'String', '颜色设置', 'Style', 'pushbutton', 'Callback', ...
'uisetfont(b);', 'Position', [0.2 . 0.8 0.8], 'Units', 'Normalized');

GUI 8

 % 进度条
% waitbar
h = waitbar(, '实例');
get(h) % 获得进度条的子对象
get(get(h, 'Children')) ha = get(h, 'Children'); % 获得坐标轴子对象的子对象内容
get(ha, 'Children') get(ans())
get(ans()) hrand = waitbar(0.3, '颜色') ha1 = get(hrand, 'Children');
hac = get(ha1, 'Children');
hapa = findall(hac, 'Type', 'patch');
set(hapa, 'Facecolor', 'k') doc waitbar waitbar(0.5, hrand)

GUI9

MATLAB的GUI的更多相关文章

  1. 基于MATLAB的GUI(Graphical User Interface)音频实时显示设计

    摘要:本文章的设计主要讲基于matlab的gui音频实时显示设计,此次设计的gui相当于一个简洁的音乐播放器,界面只有”录音“和”播放“两个控件,哈哈,够简洁吧.通过”录音“按钮可以实现声音从电脑的声 ...

  2. [原创]Matlab之GUI生成EXE文件

    近期因为项目需要,简化流程,写了一些Matlab程序,并配备上了GUI界面使其简单易用.然后问题来了,可移植性.使用Matlab生成EXE文件(可以封装很多的function),然后在一台安装有Mat ...

  3. Matlab的GUI参数传递方式总结

    MATLAB GUI传递方式 1.全局变量: 2.作为函数的参数传递: 3.利用控件的userdata数据: 4.为handles结构体添加新字段: 5.setappdata函数为句柄添加数据: 6. ...

  4. MATLAB 下GUI的学习

    做界面,然后在对应程序里做调用. 0.打开文件:命令行输入 guide 或者 新建——图形用户界面1.文件-预设可以对字体.代码等进行设置.2.工具-GUI选项可以改变行为大小. 3,添加轴,面板,按 ...

  5. 基于matlab的GUI界面开发软件

    matlab工具deploytool编译M为可执行程序 http://blog.sina.com.cn/s/blog_60f8483a0100gnsm.html

  6. matlab改变GUI和figure左上角图标的方法,并生成exe文件

    1. GUI左上角图标的更改,假设GUI的Tag为figure1,在其OpeningFcn里添加h = handles.figure1; %返回其句柄newIcon = javax.swing.Ima ...

  7. matlab学习GUI可调的界面窗口

    创建一个GUI界面,在此依然利用GUI_01的窗口来演示 发现它的最大化窗口不可调 在GUI绘制中,工具--->选择GUI选项---->选择第二个成比例 再运行就可以调控大小了

  8. matlab学习GUI的基本操作

    在命令行窗口输入guide 单击确定后出现,可以选择控件来设计,然后可以保存 右击可以查看控件的所有属性 举一个简单的GUI实例---实现数据的传输 添加可编辑文本框 更改字体大小,string默认的 ...

  9. matlab GUI封装exe文件

    学习matlab过程中,有时有些程序处理数据时老是看着代码,也会觉得疲倦,那么要试一试matlab的GUI吗?我就是这么使用matlab的GUI制作一个小程序,并且使用matlab封装成了exe文件. ...

随机推荐

  1. SQl中的char,varcher,nvarchar,txt

    CHAR    char是定长的,在字段建立时,空间就固定了,不管是否插入值(NULL也包含在内),都占用字符的空间.例如: char(8),输入字符小于8,后面补空值.输入字符大于8时,会截取.CH ...

  2. chrome浏览器 模拟访问移动端

    谷歌Chrome浏览器,可以很方便地用来当3G手机模拟器.在Windows的[开始]-->[运行]中输入以下命令,启动谷歌浏览器,即可模拟相应手机的浏览器去访问3G手机网页: 谷歌Android ...

  3. java面向对象_抽象类和接口

    一.抽象类 1.抽象方法:由abstract修饰.只有定义没有方法体.用一个分号结尾. 2.抽象类: 1)包含抽象方法的类必须是抽象类 2)由abstract修饰 3)不能被实例化 4)抽象类如果不被 ...

  4. FastJson和AsyncHttpCLient

    Android的展示数据,除了上章所讲的本地存储外,大部分数据都来自于网络.首先介绍一下Android APP开发常见的网络操作方式.从网络层面上有底层的tcp/ip,也就是我们常见的socket套接 ...

  5. 【iCore3应用开发平台】发布 iCore3 应用开发平台PID控制代码

    说明:1.本代码包包含FPGA和STM32F407两部分内容2.FPGA工程为出厂代码FPGA工程,版本为REV43.STM32F407为只含PID控制的ARM工程4.在使用风扇过程中,请勿将手伸入扇 ...

  6. 野路子出身PowerShell 文件操作实用功能 MSSQL123

    因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职, 索性就网上各种搜,各种Demo,各种修改,花了半天时间,最后还是拼凑出来能达到效果了. 本身对PowerShe ...

  7. Neil·Zou 语录二

    1 “Later equals never !”LeBlanc法则   2 爱情使人忘记时间,时间也会使人忘记爱情,不要让太多的昨天占据你的今天,请相信:是你的不管你怎样任性他都不会离开你:失去的其实 ...

  8. URL转Drawable之 Android中获取网络图片的三种方法

    转载自: http://doinone.iteye.com/blog/1074283 Android中获取网络图片是一件耗时的操作,如果直接获取有可能会出现应用程序无响应(ANR:Applicatio ...

  9. css基础知识

    CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明.其中选择器通常是您需要改变样式的 HTML 元素(比如p标签),也可以是节点的属性的值(比如id,class):每条声明都是一条字典key ...

  10. mvc配合jquery.validate验证失效,情况之一

    用viewbage绑定input空间的value值,通过submit提交.validate验证失效. 1.应该是mvc的渲染顺序导致js验证失败. 解决方案:改用mvc自带的@html辅助方法,生成文 ...