gcbo
콜백이 실행 중인 객체의 핸들
구문
h = gcbo
[h,figure] = gcbo
설명
h = gcbo
는 콜백이 실행되고 있는 그래픽스 객체의 핸들을 반환합니다.
[h,figure] = gcbo
는 현재 콜백 객체의 핸들과 이 객체가 속한 Figure의 핸들을 반환합니다.
팁
MATLAB®은 콜백이 실행되고 있는 객체의 핸들을 루트의 CallbackObject
속성에 저장합니다. 콜백이 다른 콜백을 중단(Interrupt)시키는 경우 MATLAB은 CallbackObject
값을 인터럽트를 발생시키는 콜백의 객체 핸들로 교체합니다. 해당 콜백이 완료되면 MATLAB은 중단된 콜백 객체의 핸들을 복원합니다.
루트의 CallbackObject
속성은 읽기 전용이기 때문에 그 값은 콜백이 실행되는 동안 항상 유효합니다. 루트의 CurrentFigure
속성과 Figure의 CurrentAxes
및 CurrentObject
속성(각각 gcf
, gca
, gco
가 반환함)은 사용자가 설정할 수 있습니다. 따라서 다른 콜백으로 인해 콜백이 중단된 경우에도 나중에 콜백을 실행하면서 이 속성들을 변경할 수 있습니다. 따라서 이들 함수는 어떤 객체의 콜백이 실행 중인가에 대한 신뢰할 수 있는 지표가 되지 못합니다.
객체의 CreateFcn
및 DeleteFcn
과 Figure의 SizeChangedFcn
에 대한 콜백 루틴을 작성할 때는 gcbo
를 사용해야 합니다. 이들 콜백은 루트의 CurrentFigure
속성, Figure의 CurrentObject
또는 CurrentAxes
속성은 업데이트하지 않고, 루트의 CallbackObject
속성만 업데이트하기 때문입니다.
실행되고 있는 콜백이 없는 경우 gcbo
는 []
(빈 행렬)을 반환합니다.
버전 내역
R2006a 이전에 개발됨