waitforbuttonpress
等待点击或按键
描述
请注意
中的应用程序设计器和使用uifigure
功能,使用uiwait
并指定一个WindowButtonDownFcn
或WindowKeyPressFcn
回调,uiresume
是推荐的,而不是使用waitforbuttonpress
因为它提供了对应用程序行为的更多控制。有关更多信息,请参见选择功能.
w = waitforbuttonpress
阻止语句执行,直到用户单击当前图中的鼠标按钮或按下某个键。
返回参数,w
,可以有以下值:
0
如果它检测到点击1
如果它检测到按键
的waitforbuttonpress
函数在下列键单独或一起按下时不返回值:Ctrl,转变,Alt,大写锁定,数字锁定键,或滚动锁定.
例子
提示
若要确定最后按下的键、鼠标选择类型或鼠标指针在当前图中的位置,请查询
数字
属性CurrentCharacter
,SelectionType
,CurrentPoint
,分别。
算法
使用时需要考虑的一些要点waitforbuttonpress
:
如果一个
WindowButtonDownFcn
是为图定义的,它在waitforbuttonpress
返回一个值。的
waitforbuttonpress
函数错误,如果用户通过单击窗口关闭按钮关闭图形,除非代码调用waitforbuttonpress
函数在一个try / catch
块。
选择功能
在应用程序设计器和使用uifigure
功能,使用uiwait
阻止语句执行。若要在应用程序用户单击鼠标按钮或按下某个键时恢复程序执行,请指定WindowButtonDownFcn
或WindowKeyPressFcn
回调,uiresume
.
例如,这段代码创建了一个UI图,当用户在图窗口中单击时,该UI图将恢复程序执行。
无花果= uifigure (“WindowButtonDownFcn”@ (src、事件)uiresume (src));
调用uiwait
阻止程序执行直到uiresume
调用或删除图。创建一个UIAxes
对象,并将其作为图的父对象。坐标轴集不会出现。
uiwait(图);ax = uiaxes(图);
然后,单击图。程序执行恢复,并且UIAxes
对象出现。