WindowButtonDownFcn vs zoom or pan

8 views (last 30 days)
Giuela
Giuela on 1 Oct 2020
Commented: Ted Londner on 26 Aug 2024
In my figure I have some little images; I've implemented WindowButtonDownFcn so when I click on an image, I do something different according to the image selected
The cursor position is checked with WindowButtonMotionFcn
Practically, every little image simulates a button with its callback function. I do this because the graphical aspect of my figure is better, and I can have a 'button' of different shape instead of the square or rectangular button shape. Moreover, I don't have the button outline.
Im my figure I have also an axis, used to plot data.
When I activate the zoom or the panning, the WindowButtonDownFcn function doesn't work, my 'buttons' don't work anymore until I deactivate the zoom or the pan.
This behaviour there is also if I set the zoom (or panning) on programmatically.
Is there a way to avoid this behaviour? I need the WindowButtonDownFcn ALWAYS working.
Thank you
  1 Comment
Ted Londner
Ted Londner on 28 May 2024
I'm encountering an issue similar to this one. I'd be interested to hear if Giuela's question was ever answered.

Sign in to comment.

Answers (1)

Samay Sagar
Samay Sagar on 26 Aug 2024
I have also faced a similar issue in the past.
When you assign a “WindowButtonDownFcn” callback to a “uifigure “in App Designer, it overrides the default mouse button behaviour for the entire app window. This can interfere with built-in interactive features such as zooming and panning.
Since MATLAB’s interactions depend on these callbacks, attempting to mix the two can result in unsupported and unpredictable behaviour.
You can consider using the “ImageClicked” callback function to execute your intended logic.

Categories

Find more on Data Exploration in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!