Mouse control in GUI and contrast button access

1 view (last 30 days)
Jim O'Doherty
Jim O'Doherty on 10 May 2011
Moved: DGM on 20 Feb 2023
Hi all, I'm designing a GUI (2011a) and have a few things I'm trying to sort out
I've got a stack of mediacl 2D images, and am trying to step through them by rolling the mouse wheel. I can already do this with a slider, but since the dataset is pretty large, the mouse wheel would be far better. Does anyone know how I might achieve this using the mouse wheel?
Also I'd like to be able to use the mouse-controlled contrast adjustment button available in "imtool" in my GUI. As I can create my own button on the file menu, does anyone know how I might have access to the button in my own GUI without launching imtool or using the imcontrast function?
Thanks Jim O' Doherty
  1 Comment
Camille Zimmer
Camille Zimmer on 8 May 2012
Moved: DGM on 20 Feb 2023
Hello Jim, Did you ever figure this out? I am trying to do the exact same thing, to add a contrast tool to the toolbar? (Your second question). If you have any ideas, your help would be so appreciated! Thanks

Sign in to comment.

Answers (3)

Matt Fig
Matt Fig on 10 May 2011
For the first question, have a look at the WindowScrollWheelFcn (and cousins) of the GUI figure.
For the second, set the menubar of your GUI to 'figure'. Then you can add your button (menu). (I am not sure I understand this question completely.)
  4 Comments
Sean de Wolski
Sean de Wolski on 10 May 2011
Matt, imtool is kind of its own thing; I don't think it would be very easy to copy the relevant parts.
Matt Fig
Matt Fig on 10 May 2011
I was afraid of that, but it was worth a try...

Sign in to comment.


Sean de Wolski
Sean de Wolski on 10 May 2011
  1. Scroll Wheel: no idea.
  2. The imtool contrast is basically just a histogram with adjustable upper and lower bounds. I think I would implement it with three sliders: one that controls the lower bound, one that controls the upper bound, and one that controls the scalar offset from zero (just like the red bars in imtool). The rescaling of the image based on the two bounds is easy, just algebra. I don't think there is any easy way around making you own adjustment tool and imtool isn't very friendly for interactions with code.
Good Luck!
  3 Comments
Eduardo Martins
Eduardo Martins on 13 Sep 2018
Edited: Walter Roberson on 15 Sep 2018
Hello, can you please provide the code for the contrast sliders? I am trying to do this using the code I used for brightness (changing to imcontrast), but it is not working. Thank you.
global im2
val = 0.01 * get(hObject, 'Value') - 0.1;
imbright = im2 + val;
axes(handles.axs_img);
imshow(imbright);

Sign in to comment.


Walter Roberson
Walter Roberson on 10 May 2011
You can use imadjust for contrast control.
The function that imtool invokes to do the contrast work is the image toolbox private function imuitools/private/windowlevel.m

Community Treasure Hunt

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

Start Hunting!