首页 > 其他 > 详细

MATLAB-《10分钟学习GUI系列》-【第一课】- 对象的基础概念及操作

时间:2020-10-07 16:37:47      阅读:44      评论:0      收藏:0      [点我收藏+]
  1. get:查看获得某对象属性。get(0) 获得句柄值为0的对象的属性,即显示器对象属性
  2. set:设置某对象属性。
  3. allchild:查找某一对象的所有子级(子对象或属性)
  4. gcf :当前Figure对象的句柄值。(gcf指整个图都是)
  5. gca:当前坐标区或图的句柄值。(gca指红框里的坐标,gca范围比gcf小的多。)
技术分享图片
  1. findobj :查找符合属性要求的对象。(属性HandleVisibility为off的,找不到 )。
  2. findall:查找所有图形对象。可以先用 findall 或 findobj 命令查找对象,再用set对对象进行修改。
findall 与 findobj 类似,不同的是即使其 HandleVisibility 设置为 ‘off‘,它也查找对象。

【GUI的‘handlevisibility‘属性】
handlevisibility:用于设置控件的句柄可访问性。可以取三个值:
        on :对于所有函数均可见,该控件的句柄,不仅gui的回调函数可以认,非gui(matlab非gui模块的函数、用户自动函数)都可以认
        off:该控件不可访问
        callback:该控件只有gui的回调函数可以访问

  

  1. 无论是属性,还是属性值,只要是字符,一般都用单引号引起来。如果是数字,一般不用单引号。

例子:    

例子:
plot([0:10]); % 绘制一幅图
title(‘示例‘); % 增加text对象,试试用添加子对象的方法,进行添加text对象
allchild(gcf)  %gcf是当前图窗的句柄。获取当前窗口的所有子对象,而不是属性
get(ans(10))   %查看allchild(gcf) 命令运行结果ans中的第10个子对象的所有属性。
                %get(0):获得句柄值为0的对象的属性,即显示器对象属性
%从get命令行输出结果ans里找到“Type”,type的属性值就是该子对象的类型
set(ans(10), ‘FontSize‘, 20, ‘FontWeight‘, ‘bold‘);%找到对应的属性,就可以按照自己的要求设置了
                    %找到第10个子对象,根据要求,设置图像。
                    %fontsize是字体大小,设置为20
                    %FontWeight是字宽,bold指的是加宽
                    %这里的ans(10),可以换成其他的指定具体子函数的字段。

h=findobj(allchild(gca), ‘String‘, ‘示例‘); % 获得静态文本“示例”的句柄并进行设置,这里有问题,搜不到。
%上面的那个命令报错的原因是:
       % 1.text对象属于figure的子对象,不属于axes的子对象,所以这里要用gcf.
       % 2.text的HandleVisibility属性为‘off‘,findobj搜不到,所以只能使用findall,
       % 3.或是把它的HandleVisibility属性改为‘on‘,再用findobj,也能搜到
       
%所以命令更改为: 
h=findall(allchild(gcf), ‘String‘, ‘示例‘); %就可以搜到.

                    %allchild(gca)是获取 
                    % 属性为“String”。text是坐标轴的子对象
                    %属性值为“实例”   
 set(h, ‘FontSize‘, 20, ‘FontWeight‘, ‘bold‘); 

  

  

 

MATLAB-《10分钟学习GUI系列》-【第一课】- 对象的基础概念及操作

原文:https://www.cnblogs.com/dachaozi/p/13777432.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!