ContextMenu속성
상황별메뉴의모양과동작제어
상황별메뉴는사용자가그래픽스객체나UI구성요소를마우스오른쪽버튼으로클릭할때표시되는메뉴입니다。uicontextmenu
함수를사용하여상황별메뉴를만들고속성을설정합니다。속성값을변경하여,상황별메뉴의모양과동작을수정할수있습니다。다음과같이점@ @기법을사용하여특정상황별메뉴객체와속성을참조하십시오。uifigure
또는数字
함수를사용하여만든图를상황별메뉴의부모로지정할수있습니다。
FIG = ufigure;Cm = uicontextmenu(图);m = uimenu(cm,'Text','Go To File');fig.ContextMenu = cm;
콜백
ContextMenuOpeningFcn
- - - - - -콜백함수를여는상황별메뉴
”
(디폴트값)|함수 핸들|셀형 배열|문자형벡터
콜백함수를여는상황별메뉴로,다음값중하나로지정됩니다。
함수핸들。
첫번째소가함수핸들셀형배열。이셀형배열의그다음소들은콜백함수로전달할수입니다。
유효한matlab®` ` ` ` `현식이포함된문자형벡터(권장되지않음)。Matlab은이현식을기본작업공간에서실행합니다。
콜백속성값을함수핸들,셀형배열또는문자형벡터로지정하는방법에대한자세한내용은指定回调函数항목을참조하십시오。
CreateFcn
- - - - - -생성 함수
”
(디폴트값)|함수 핸들|셀형 배열|문자형벡터
객체생성함수로,다음값중하나로지정됩니다。
함수핸들。
첫번째소가함수핸들셀형배열。이셀형배열의그다음소들은콜백함수로전달할수입니다。
유효한matlab ` ` ` ` ` ` ` ` `현식이포함된문자형벡터(권장되지않음)。Matlab은이현식을기본작업공간에서실행합니다。
콜백을함수핸들,셀형배열또는문자형벡터로지정하는방법에대한자세한내용은앱디자이너에서콜백작성하기항목을참조하십시오。
이속성은matlab이객체를생성할때실행할콜백함수를지정합니다。MATLAB은CreateFcn
콜백을실행하기전에모든속성값을초기화합니다。CreateFcn
속성을지정하지않으면matlab은디폴트생성함수를실행합니다。
기존구성소에대해서는CreateFcn
속성을설정해도아무효과가없습니다。
이속성을함수핸들또는셀형배열로지정하면생성중인객체에콜백함수의첫번째인수를사용하여액세스할수있습니다。이속성을함수핸들또는셀형배열로지정하지않은경우에는gcbo
함수를사용하여객체에액세스하십시오。
DeleteFcn
- - - - - -삭제 함수
”
(디폴트값)|함수 핸들|셀형 배열|문자형벡터
객체삭제함수로,다음값중하나로지정됩니다。
함수핸들。
첫번째소가함수핸들셀형배열。이셀형배열의그다음소들은콜백함수로전달할수입니다。
유효한matlab ` ` ` ` ` ` ` ` `현식이포함된문자형벡터(권장되지않음)。Matlab은이현식을기본작업공간에서실행합니다。
콜백을함수핸들,셀형배열또는문자형벡터로지정하는방법에대한자세한내용은앱디자이너에서콜백작성하기항목을참조하십시오。
이속성은matlab에서객체를삭제할때실행할콜백함수를지정합니다。Matlab은객체의속성을파괴하기전에DeleteFcn
콜백을실행합니다。DeleteFcn
속성을지정하지않으면matlab은디폴트삭제함수를실행합니다。
이속성을함수핸들또는셀형배열로지정하면삭제중인객체에콜백함수의첫번째인수를사용하여액세스할수있습니다。이속성을함수핸들또는셀형배열로지정하지않은경우에는gcbo
함수를사용하여객체에액세스하십시오。
콜백실행컨트롤
可中断
- - - - - -콜백 중단
“上”
(디폴트값)|打开/关闭논리값
콜백중단으로,“上”
또는“关闭”
나숫자형값또는논리값1
(真正的
)또는0
(假
)으로지정됩니다。값“上”
은真正的
와동일하고값“关闭”
는假
와동일합니다。따라서이속성의값을논리값으로사용할수있습니다。값은matlab.lang.OnOffSwitchState
유형의on/off논리값으로저장됩니다。
이속성은실행중콜백을중단할수있는지여부를지정합니다。고려할콜백상태에는다음두가지가있습니다。
실행중콜백은현재실행되고있는콜백입니다。
化学式터럽트콜백은실행중콜백을중단하고자신이실행되려는콜백입니다。
MATLAB은콜백대기열을처리하는명령을실행할때마다콜백중단동작을결정합니다。이러한명령에는drawnow
,数字
,uifigure
,getframe
,等待
,暂停
가포함됩니다。
실행중콜백에이러한명령이포함되어있지않으면중단이발생하지않습니다。Matlab은먼저실행중콜백의실행을완료한다음터럽트콜백을실행합니다。
실행중콜백에이러한명령이포함되어있으면실행중콜백을소유한객체의可中断
속성에서중단을발생시킬지여부를결정합니다。
可中断
값이“关闭”
이면중단이발생하지않습니다。대신터럽트콜백을소유한객체의BusyAction
속성이터럽트콜백을삭제할지아니면콜백대기열에추가할지결정합니다。可中断
값이“上”
이면중단이발생합니다。MATLAB이다음번콜백대기열을처리할때실행중콜백의실행을중지하고인터럽트콜백을실행합니다。터럽트콜백이완료된후에는matlab이실행중콜백의실행을재개합니다。
참고
콜백중단과실행은다음상황에서다르게동작합니다。
터럽트콜백이
DeleteFcn
,CloseRequestFcn
,SizeChangedFcn
콜백중하나이면可中断
속성값에관계없이중단이발생합니다。실행중콜백이현재
等待
함수를실행중이면可中断
속성값에관계없이중단이발생합니다。터럽트콜백을
计时器
객체가소유한경우콜백은可中断
속성값에관계없이예약된대로실행됩니다。
BusyAction
- - - - - -콜백 대기
“队列”
(디폴트값)|“取消”
콜백대기로,“队列”
나“取消”
로지정됩니다。BusyAction
속성은matlab이터럽트콜백의실행을처리하는방법을지정합니다。고려할콜백상태에는다음두가지가있습니다。
실행중콜백은현재실행되고있는콜백입니다。
化学式터럽트콜백은실행중콜백을중단하고자신이실행되려는콜백입니다。
BusyAction
속성은다음조건이모두충족될때만콜백대기동작을결정합니다。
이러한조건에서는터럽트콜백을소유하는객체의BusyAction
속성값이matlab에서터럽트콜백을처리하는방식을결정합니다。BusyAction
속성의가능한값은다음과같습니다。
“队列”
-실행중콜백이실행을마치고나면터럽트콜백이처리되도록대기열에넣습니다。“取消”
—터럽트콜백을실행하지않습니다。
BeingDeleted
- - - - - -삭제 상태
打开/关闭논리값
이속성은읽기전용입니다。
삭제상태로,matlab.lang.OnOffSwitchState
유형의on/off논리값으로반환됩니다。
MATLAB은DeleteFcn
콜백이실행을시작할때BeingDeleted
속성을“上”
으로설정합니다。BeingDeleted
속성은구성소객체가더이상존재하지않을때까지“上”
으로설정되어유지됩니다。
객체를쿼리하거나수정하기전에BeingDeleted
속성의값을확하여이객체가곧삭제될것이아님을확합니다。
부모/자식
孩子们
- - - - - -상황별메뉴자식
빈GraphicsPlaceholder
배열(디폴트값)|菜单
객체의벡터
상황별메뉴의자식으로,빈GraphicsPlaceholder
나菜单
객체로구성된벡터로반환됩니다。
孩子们
속성을사용해서는자식을추가하거나제거할수없습니다。자식의목록을보거나자식메뉴항목을재정렬하려면이속성을사용하십시오。이배열에서자식의순서는열려있는상황별메뉴에표시된메뉴항목의순서를반대로반영합니다。
예를들어,다음코드는세개의상황별메뉴를만듭니다。실행중앱에서상황별메뉴를열때Menu1
이첫번째메뉴옵션으로@ @시됩니다。
FIG = ufigure;Cm = uicontextmenu(图);M1 = uimenu(cm,“文本”,“Menu1”);M2 = uimenu(cm,“文本”,“Menu2”);M3 = uimenu(cm,“文本”,“Menu3”);fig.ContextMenu = cm;
厘米。孩子们
은예약된순서로메뉴항목의목록을반환합니다。
厘米。孩子们
ans = 3×1菜单数组:菜单(Menu3)菜单(Menu2)菜单(Menu1)
HandleVisibility
속성이“关闭”
로설정된객체는孩子们
속성에나열되지않습니다。
자식을이목록에추가하려면또다른菜单
객체의父
속성을 이快捷菜单
객체로설정하십시오。
HandleVisibility
- - - - - -객체핸들의가시성
“上”
(디폴트값)|“回调”
|“关闭”
객체핸들의가시성으로,“上”
,“回调”
,“关闭”
중하나로지정됩니다。
이속성은그부모의자식목록에서객체의가시성을제어합니다。객체가그부모의자식목록에표시되지않는다면객체계층구조를검색하거나핸들속성을쿼리하여객체를가져오는함수는객체를반환하지않습니다。이러한함수로는得到
,findobj
,gca
,gcf
,gco
,newplot
,班
,clf
,关闭
가있습니다。HandleVisibility
속성은부모图의CurrentObject
속성의객체핸들의가시성도제어합니다。객체는@ @시되지않아도여전히유효합니다。객체에액세스할수있으면해당속성을설정하여가져온후객체에대해작동하는함수로전달할수있습니다。
HandleVisibility값 | 설명 |
---|---|
“上” |
객체핸들이항상@ @시됩니다。 |
“回调” |
명령줄에서호출한함수내에서가아니라,콜백내에서나콜백이호출한함수내에서객체핸들이표시됩니다。이옵션은명령줄에서객체에액세스하는것은차단하지만,콜백함수가이객체에액세스하는것은허용합니다。 |
“关闭” |
객체핸들이항상@ @시되지않습니다。이옵션은다른함수에의해ui가의도치않게변경되는것을방지하는데유용합니다。HandleVisibility 를“关闭” 로설정하여해당함수를실행하는동핸들을일시적으로숨길수있습니다。 |
식별자
类型
- - - - - -그래픽스객체의유형
“uicontextmenu”
이속성은읽기전용입니다。
그래픽스객체의유형으로,“uicontextmenu”
로반환됩니다。
标签
- - - - - -객체식별자
”
(디폴트값)|문자형벡터|字符串형스칼라
객체식별자로,문자형벡터또는字符串형스칼라로지정됩니다。객체의식별자로사용할고유标签
값을지정할수있습니다。코드의다른곳에서객체에액세스해야할경우findobj
함수를사용하여标签
값을기반으로객체를검색할수있습니다。
用户数据
- - - - - -사용자데이터
[]
(디폴트값)|배열
사용자데이터로,임의의배열로지정됩니다。用户数据
를지정하면앱내에서데이터를공유하는데유용할수있습니다。자세한내용은콜백간데이터공유하기항목을참조하십시오。
버전 내역
R2006a이전에개발됨R2020a:快捷菜单
객체의回调
속성은권장되지않음
R2020a부터권장되지않음
R2020a부터는快捷菜单
객체의回调
속성을사용하는것은권장되지않습니다。快捷菜单
객체의ContextMenuOpeningFcn
속성을사용합니다。속성값은동일합니다。
현재로서는快捷菜单
객체의回调
속성에대한지원을제거할계획이없습니다。그러나快捷菜单
객체에대해得到
함수를호출하면반환되는목록에더이상이속성이나타나지않습니다。
R2020a:快捷菜单
객체의可见
속성과位置
속성은권장되지않음
R2020a부터권장되지않음
R2020a부터상황별메뉴가특정위치에서열리도록구성하기위해可见
속성과位置
속성을사용하는것은권장되지않습니다。uifigure
함수로만든앱에서는开放
함수를대신사용하십시오。
현재로서는快捷菜单
객체의可见
속성과位置
속성에대한지원을제거할계획이없습니다。그러나快捷菜单
객체에대해得到
함수를호출하면반환되는목록에더이상이러한속성이나타나지않습니다。
참고 항목
Matlab명령
다음matlab명령에해당하는링크를클릭했습니다。
명령을실행하려면matlab명령창에입력하십시오。웹브라우저는matlab명령을지원하지않습니다。
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。