Customize Wheel Scroll fxn to work within axes in figure?
35 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Brian
am 16 Jul. 2014
Kommentiert: Brian
am 21 Jul. 2014
Hello, thanks for reading this,
I was wondering, is it possible to create a WindowScrollWheelFcn event exclusive to a axes within a figure I create within a UI? As in, when I cross over the axes in the UI I create and THEN scroll down, I do the callback. Otherwise, I do not activate the callback.
I was thinking I could check the mouse position when I do it in a figure, and if its in the domain of the axes, then do the WindowScrollWheelFcn callback, otherwise do nothing. Would this be the way to go about doing this?
Thanks for your help!
0 Kommentare
Akzeptierte Antwort
Joseph Cheng
am 16 Jul. 2014
Bearbeitet: Joseph Cheng
am 16 Jul. 2014
i did a quick test script to show you what is possible.
h=figure
p1=subplot(2,1,1),plot(rand(10))
p2=subplot(2,1,2),plot(rand(4))
set(h,'windowscrollWheelFcn', 'plot(rand(10))');
set(h,'Windowbuttonupfcn', 'gca');
so with the snippit you can see that if you click on subplot 1 and scroll wheel it'll peform the random plot and do the same with subplot 2. since we can determine which subplot (or axes) were clicked the callback function can determine what to perform. I show how to determine which item was clicked using the windowbuttonupfcn. So in the windowscrollwheelfcn function you can set up something that checks what is the active axes and perform the scrollwheel function.
4 Kommentare
Weitere Antworten (2)
Brian
am 16 Jul. 2014
1 Kommentar
Joseph Cheng
am 17 Jul. 2014
yes. so the first set for the windowscrollwheefcn will perform what will be after. Before I implemented the mouse positioning i used the windowbuttonupfcn to find which axes was last selected. but i realized you want to utilize the mouse positioning to determine which axes is hovered not clicked.
Brian
am 16 Jul. 2014
2 Kommentare
Joseph Cheng
am 17 Jul. 2014
yes exactly, in my second comment where I included the mouse positioning, it calls for the function scrollfunc() where you can do something else. I just use plot(rand) as a temporary do something function.
Siehe auch
Kategorien
Mehr zu Axis Labels finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!