waitforbuttonpress
클릭 또는 키 누름 대기
설명
참고
앱 디자이너 또는 uifigure
함수를 사용하여 만든 앱에서는 uiresume
을 호출하는 WindowButtonDownFcn
또는 WindowKeyPressFcn
콜백을 지정하면 그리고 uiwait
를 사용하면 앱 동작을 더 많이 제어할 수 있기 때문에 waitforbuttonpress
를 사용하는 것보다 더 권장됩니다. 자세한 내용은 대체 기능 항목을 참조하십시오.
w = waitforbuttonpress
는 사용자가 현재 Figure 내에서 마우스 버튼을 클릭하거나 키를 누를 때까지 명령문의 실행을 차단합니다.
반환 인수 w
는 다음 값을 가질 수 있습니다.
클릭을 감지하는 경우
0
키 누름을 감지하는 경우
1
waitforbuttonpress
함수는 다음 키가 개별적으로 또는 함께 눌린 경우에는 값을 반환하지 않습니다. Ctrl, Shift, Alt, Caps Lock, Num Lock 또는 Scroll Lock.
예제
팁
마지막으로 누른 키, 마우스 선택 유형 또는 현재 Figure 내에서 마우스 포인터의 위치를 확인하려면
Figure
의 속성CurrentCharacter
,SelectionType
,CurrentPoint
를 각각 쿼리하십시오.
알고리즘
다음은 waitforbuttonpress
함수를 사용할 때 고려해야 할 일부 중요 사항입니다.
Figure에 대해
WindowButtonDownFcn
이 정의된 경우, 이 함수는waitforbuttonpress
가 값을 반환하기 전에 실행됩니다.try/catch
블록 내에서waitforbuttonpress
함수를 호출하는 코드가 아니라면 사용자가 창 닫기 버튼을 클릭하여 Figure를 닫는 경우waitforbuttonpress
함수에서 오류가 발생합니다.
대체 기능
앱 디자이너 또는 uifigure
함수를 사용하여 만든 앱에서는 uiwait
를 사용하여 명령문의 실행을 차단합니다. 앱 사용자가 마우스 버튼을 클릭하거나 키를 누를 때 프로그램 실행을 재개하려면 uiresume
을 호출하는 WindowButtonDownFcn
또는 WindowKeyPressFcn
콜백을 지정합니다.
예를 들어 이 코드는 사용자가 Figure 창을 클릭할 때 프로그램 실행을 재개하는 UI Figure를 만듭니다.
fig = uifigure('WindowButtonDownFcn',@(src,event)uiresume(src));
uiresume
이 호출되거나 Figure가 삭제될 때까지 프로그램 실행을 차단하려면 uiwait
를 호출합니다. UIAxes
객체를 만들고 Figure에 부모로 지정합니다. 좌표축이 표시되지 않습니다.
uiwait(fig); ax = uiaxes(fig);
그런 다음 Figure를 클릭합니다. 프로그램 실행이 재개되고 UIAxes
객체가 나타납니다.