check if mouse is on a button

6 ビュー (過去 30 日間)
wetlab Technion
wetlab Technion 2021 年 5 月 30 日
回答済み: Jan 2021 年 5 月 30 日
I have an app in MATLAB's app designer and I want the mouse shape to change the pointer (using "setfigptr") depending on whether or not the mouse is hovering on a button. so far I used the WindowButtonMotionFcn, running in a loop over all the buttons and comparing the pointer location to each button. however, now that I have more than 30 buttons I am suspecting that this is slowing down the app a bit because the function is called whenever the mouse is moved. is there a different way to do this?
many thanks
nathan

回答 (1 件)

Jan
Jan 2021 年 5 月 30 日
If you post your code, the readers might see a point, which can be improved.
A solution might be to create a 2D matrix with same number of elements as the figure has pixels. Let the values be 0 outside the pixels and n for the n.th button. Then use the CurrentPoint in units pixels as index of this matrix. So you need 1 test to check all buttons.

カテゴリ

Help Center および File ExchangeDevelop Apps Using App Designer についてさらに検索

製品


リリース

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by