matlab findobj name,MATLAB的GUI

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %常使用的对象查看和设置函数2 % 1.get、set函数3 get(0) %获得句柄值为0的对象的属性,即显示器对象属性4

5 plot([0:10]); %绘制一幅图6 title(‘示例‘); %增加text对象7

8 %获得figure的所有子对象9 allchild(gcf)10

11 %查看子对象类型12 get(ans(1)) %type属性可以看到子对象类型13

14 %获得静态文本“示例”的句柄并进行设置15 h = findobj(allchild(gca), ‘String‘, ‘示例‘);16 set(h, ‘FontSize‘, 20, ‘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])

cdec0645add3fc3c328197dda5c76203.pngGUI 

81178cc93a2a3bb5048d90d76e7ec935.png

1 %对象操作示例2 % h= figure ; get(h);3 %获取能够使用的句柄4 hf = figure(‘Units‘, ‘Normalized‘, ...5 ‘Position‘, [0.2 0.3 0.5 0.5], ...6 ‘Menu‘, ‘none‘);7

8 ha = axes(‘Parent‘, hf, ‘Units‘, ‘Normalized‘, ...9 ‘Position‘, [0.1 0.1 0.8 0.8]);10

11 hl = line(‘Parent‘, ha, ‘XData‘, [0:0.01:7], ...12 ‘YData‘, sin([0:0.01:7]), ‘Color‘, ‘r‘, ...13 ‘LineWidth‘, 3);14

15 cstring = ‘gbkmy‘;16

17 for k = 1:5

18 pause(3);19 set(hl, ‘Color‘, cstring(k));20 end

2

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %底层代码实现GUI2 hf =figure(...3 ‘Units‘, ‘Normalized‘, ...4 ‘Position‘, [0.2 0.2 0.6 0.5], ...5 ‘Menu‘, ‘none‘, ...6 ‘Color‘, ‘w‘);7

8 ha = axes(‘Parent‘, hf, ...9 ‘Units‘, ‘Normalized‘, ...10 ‘Position‘, [0.1 0.1 0.6 0.8], ...11 ‘Box‘, ‘off‘, ...12 ‘NextPlot‘, ‘add‘);13

14 hb1 = uicontrol(‘Parent‘, hf, ...15 ‘Units‘, ‘Normalized‘, ...16 ‘Position‘, [0.75 0.2 0.15 0.1], ...17 ‘Style‘, ‘pushbutton‘, ...18 ‘String‘, ‘sin‘, ...19 ‘Callback‘, ‘plot(sin([0:0.01:6]))‘);20

21 hb2 = uicontrol(‘Parent‘, hf, ...22 ‘Units‘, ‘Normalized‘, ...23 ‘Position‘, [0.75 0.4 0.15 0.1], ...24 ‘Style‘, ‘pushbutton‘, ...25 ‘String‘, ‘cos‘, ...26 ‘Callback‘, ‘plot(cos([0:0.01:6]))‘);27

28 hb3 = uicontrol(‘Parent‘, hf, ...29 ‘Units‘, ‘Normalized‘, ...30 ‘Position‘, [0.75 0.6 0.15 0.1], ...31 ‘Style‘, ‘pushbutton‘, ...32 ‘String‘, ‘clear‘, ...33 ‘Callback‘, ‘try,delete(allchild(ha));end‘);

GUI 3

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %常用对象的属性2 % % 1.figure3 % hf =figure;4 % get(hf);5 %

6 % %改变颜色7 % set(hf, ‘Color‘, ‘w‘);8 % set(hf, ‘Menubar‘, ‘none‘);9 % set(hf, ‘NumberTitle‘, ‘off‘, ‘Name‘, ‘演示‘);10 % set(hf, ‘ReSize‘, ‘off‘);11 % pause(3)12 % set(hf, ‘Visible‘, ‘off‘);13 % pause(3)14 % set(hf, ‘Visible‘, ‘on‘);15 %

16 % set(hf, ‘WindowStyle‘, ‘modal‘);17 %

18 % set(hf, ‘WindowKeyPressFcn‘, ‘closereq‘);19 %

20 % set(hf, ‘WindowButtonDownFcn‘, ‘closereq‘);21 %

22 % hb = uicontrol(‘Style‘, ‘pushbutton‘, ‘Callback‘, ‘closereq‘);23

24 % 2.axes25 ha =axes;26 get(ha)27 set(ha, ‘NextPlot‘, ‘add‘);28 plot([0:100]);29

30 plot(sin(0:0.01:3));

GUI 4

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %text2 hf =axes;3 ht = text(1, 1, ‘示例‘);4

5 get(ht)6

7 text(‘String‘, ‘\int_0^x dF(x)‘, ‘Position‘, [0.5 .5]);8

9 text(‘interpreter‘, ‘latex‘, ‘String‘, ‘$$ \int_0^x dF(x) $$‘, ‘Position‘, [0.2 .2]);10

11 %原始的语句写出来12 plot(x);13 %在原始语句两遍加上单引号14 ‘plot(x);‘

15 %当原始语句中含有引号,那么将原始的单引号都改为两个单引号,然后再最外层加上一对单引号16 ‘plot(x, y,‘‘r‘‘);‘

GUI 5

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %text2 hf =axes;3 ht = text(0.1, 1, ‘示例‘);4

5 get(ht)6

7 text(‘String‘, ‘\int_0^x dF(x)‘, ‘Position‘, [0.5 .5]);8

9 text(‘interpreter‘, ‘latex‘, ‘String‘, ‘$$ \int_0^x dF(x) $$‘, ‘Position‘, [0.2 .2]);10

11 %原始的语句写出来12 plot(x);13 %在原始语句两遍加上单引号14 ‘plot(x);‘

15 %当原始语句中含有引号,那么将原始的单引号都改为两个单引号,然后再最外层加上一对单引号16 ‘plot(x, y,‘‘r‘‘);‘

GUI6

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %uigetfile2 uigetfile3

4 doc uigetfile5

6 %规定打开文件类型7 uigetfile(‘*.m‘);8

9 %输出参数意义10 [a, b, c] = uigetfile(‘*.m‘);11

12 [a, b, c] = uigetfile(‘*.txt‘);13 if c == 1

14 load(fullfile(b, a));15 end16

17 uigetfile(‘*.m‘, ‘实例‘, ‘default.m‘);18

19 %uiputfile20 uiputfile21

22 doc uiputfile23 [a, b, c] = uiputfile(‘*.m‘);

GUI 7

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %颜色设置对话框2 uisetcolor3

4 doc uisetcolor5

6 c =uisetcolor;7

8 c = uisetcolor([1 0 0]);9

10 h = plot([0:10]);11 c =uisetcolor(h);12

13 figure;14 b = uicontrol(‘Parent‘, gcf, ‘String‘, ‘颜色设置‘, ‘Style‘, ‘pushbutton‘, ‘Callback‘, ...15 ‘c = uisetcolor; set(b,‘‘BackgroundColor‘‘, c);‘);16

17 %字体设置对话框18 uisetfont19

20 doc uisetfont21

22 S =uisetfont(b);23

24 figure;25 b = uicontrol(‘Parent‘, gcf, ‘String‘, ‘颜色设置‘, ‘Style‘, ‘pushbutton‘, ‘Callback‘, ...26 ‘uisetfont(b);‘, ‘Position‘, [0.2 .2 0.8 0.8], ‘Units‘, ‘Normalized‘);

GUI 8

cdec0645add3fc3c328197dda5c76203.png

81178cc93a2a3bb5048d90d76e7ec935.png

1 %进度条2 %waitbar3 h = waitbar(0, ‘实例‘);4 get(h)5

6 %获得进度条的子对象7 get(get(h, ‘Children‘))8

9 ha = get(h, ‘Children‘);10

11 %获得坐标轴子对象的子对象内容12 get(ha, ‘Children‘)13

14 get(ans(1))15 get(ans(2))16

17 hrand = waitbar(0.3, ‘颜色‘)18

19 ha1 = get(hrand, ‘Children‘);20 hac = get(ha1, ‘Children‘);21 hapa = findall(hac, ‘Type‘, ‘patch‘);22 set(hapa, ‘Facecolor‘, ‘k‘)23

24 doc waitbar25

26 waitbar(0.5, hrand)

GUI9

原文:http://www.cnblogs.com/wangh0802PositiveANDupward/p/4593297.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值