waitforbuttonpressf​h

版本 1.0.0 (1.4 KB) 作者: Andrew Diamond
like waitforbuttonpress but for specified figure handle including uifigure.
22.0 次下载
更新时间 2020/5/29

查看许可证

based off of contribution "getkey", like waitforbuttonpress, this causes a uiwait to occur until a key is pressed but with respect to the given figure. As a bonus, the key is returned. (Note the keypressfcn returns multichar strings for non-ascii characters, e.g. 'return' for Enter)

It is useful in the context of App Designer uiFigure which, at least in 2019b, had its HandleVisibility property hard coded to 'off' and was unsettable which meant it would never be gcf and so never be able to be used by waitforbuttonpress. In my particular use, since imrect doesn't work with uifigure (not sure about 2020a), I used drawrectangle but that's asynchronous and I needed it to wait (like imrect).

R=drawrectangle(app.axBF);
ch = waitforbuttonpressfh(app.UIFigure)

Note, though by spec getkey itself would seem to be sufficient for this purpose, it could fail with drawrectangle, after adjusting it, causing the terminating/resuming key press to be ignored. (I believe that's due to its use of strings in its keypress callback which uses gcbf which perhaps changes due to drawrectangle and then gets evaluated in its environment? Just a guess. I used a callback w/o strings).

This also works in compiled apps.

I haven't tested this with other versions but I would think this should work with any any version that had a 'keypressfcn' callback/property for its figure/uifigure.

引用格式

Andrew Diamond (2024). waitforbuttonpressfh (https://www.mathworks.com/matlabcentral/fileexchange/76363-waitforbuttonpressfh), MATLAB Central File Exchange. 检索来源 .

MATLAB 版本兼容性
创建方式 R2019b
与 R2019b 及更高版本兼容
平台兼容性
Windows macOS Linux
致谢

参考作品: getkey

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
版本 已发布 发行说明
1.0.0