Question

I want to use a NSButton configured to show only an image in my NSToolbarItem. The item is created in IB and the code to add the button to it is:

NSButton *button = [[NSButton alloc]init];
[button setImage:[NSImage imageNamed:@"StarEmpty"]];
[button setAlternateImage:[NSImage imageNamed:@"StarFull"]];
[button setImagePosition:NSImageOnly];
[button setBordered:NO];

[self.toolbarItem setView:button];

The problem is that when i click on the image instead of the alternate image a lighter background is shown. I link the image to explain the problem.

This is the normal state and it's ok

enter image description here

This is when i click on it (and not rise the left mouse button)

enter image description here

Can anyone tell me how to fix that? thanks!

Was it helpful?

Solution

Have you tried changing the button type to NSMomentaryChangeButton?

NSMomentaryChangeButton : While the button is held down, the alternate image and alternate title are displayed. The normal image and title are displayed when the button isn’t pressed. This option is called “Momentary Change” in Interface Builder’s Button Inspector. Available in OS X v10.0 and later.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top