|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
搞不清“findobj”和“findall”的区别6 b( d& E- D$ t( N0 `4 _4 q* D
书上写的是:& n: ~" {: u( e8 W
“findobj”返回系统root对象和所有子对象的句柄;
6 r; j5 y* q" y/ B7 C“findall(handlelist)”返回对象handlelist的层次下所有图像对象的句柄
! o# ~ j7 w, i+ _( j0 P7 r# r/ [
& p; \9 Q! ]& h- l0 k我就按书上编了一个小程序:
% `( I; j+ H. o: g& Gclose all;clear;clc;$ o& e& E0 W0 j
plot(1:10)
. n" R8 G) [* a0 k8 gxlabel xlab %x轴名称为“xlab”! S+ ?. d2 P* M
1 X9 k9 Y' e+ a2 ?" @; E" ?/ Ydisp('findobj返回的对象句柄')
3 } F( Y& `9 s% G/ X0 i- u. Sh1=findobj, h3 u2 n- n8 u0 j$ D. r0 ]2 n
%获取系统root和所有子对象的句柄,只找到4个对象
; R5 [/ G$ F' K* A%>> 0 -- 屏幕的句柄- B" z! R8 R1 L2 ]% o8 s( W
%>> 1 -- 窗口的句柄# O1 v; q$ w; Z! L$ g g7 ~3 ]3 L0 j
%>> 153.0018 -- 轴的句柄
6 T5 D- v& W: E5 N d%>> 154.0023 -- 直线的句柄
6 D- i& p* A$ A
8 A, D4 R' W, k: K0 N( B2 {# r E0 Z0 a: C2 c; I2 A- J" N" x
disp('findall返回的对象句柄')8 H u% |; |5 w' u1 P
h2=findall(0)
2 l( r4 u l8 f4 ^%获取root对象下所有对象的句柄
7 s6 G6 f) c6 d8 G7 z& d%h2=[158*1],找到了158个对象
0 g( j2 a! ~, R
0 e2 @6 l# T0 v9 R2 F' g0 t: L# i 个人理解:findobj和findall(0)找到的对象个数起码应该是相等的,为什么二者不等?而且findall多找出了那么多对象,多出来的对象是体现在哪些图形上?
1 i z1 ~+ R# E
$ p" o$ O5 h/ g
+ @( ^& r' P. d3 ^disp('allchild返回的root子对象句柄')
% M& F6 }2 V; sh3=allchild(0)1 k& L) o R$ O& G/ m4 n. I
%获取root对象的子对象
1 C+ Y! P( L! ?5 j%h3=1,只找到一个figure对象) @% K$ X, i9 z8 h" M
0代表屏幕,1代表窗口,搜寻整个屏幕只有1个窗口图形,那么,窗口里的坐标轴、曲线不算么?为什么在搜索窗口的子对象时,有搜索出10个对象来呢(见下指令)?
* ?; \4 Q3 Z0 S. u0 R2 i; L
u, v, y, \* K! V2 ^# \) C1 c0 o- t9 ?. Q. \9 |* H9 ]* \ a9 k
disp('allchild返回的figure子对象句柄') M2 A! K! ?) p( G8 r7 q, p/ z
h4=allchild(1)
& o; L* |6 a, p9 C( ?# ~%获取figure对象的子对象,
# c! O0 \6 D x2 W, n7 B% d%h4=[10*1] |
|