on OSX I have an NSButton with a pretty dark image and unfortunately it is not possible to change the color using the attributes inspector. See picture the big black button, the text is Go.
Any clues for a possibility to change the text color? I looked in to the NSButton class but there is no method to do that. I´m aware that I could make the image with white font but that is not what I want to do.
Greetings from Switzerland, Ronald Hofmann ---
Here is two other solutions: http://denis-druz.okis.ru/news.534557.Text-Color-in-NSButton.html
solution 1:
-(void)awakeFromNib { NSColor *color = [NSColor greenColor]; NSMutableAttributedString *colorTitle = [[NSMutableAttributedString alloc] initWithAttributedString:[button attributedTitle]]; NSRange titleRange = NSMakeRange(0, [colorTitle length]); [colorTitle addAttribute:NSForegroundColorAttributeName value:color range:titleRange]; [button setAttributedTitle:colorTitle]; }
solution 2:
in *.m file:
- (void)setButtonTitleFor:(NSButton*)button toString:(NSString*)title withColor:(NSColor*)color { NSMutableParagraphStyle *style = [[NSMutableParagraphStyle alloc] init]; [style setAlignment:NSCenterTextAlignment]; NSDictionary *attrsDictionary = [NSDictionary dictionaryWithObjectsAndKeys:color, NSForegroundColorAttributeName, style, NSParagraphStyleAttributeName, nil]; NSAttributedString *attrString = [[NSAttributedString alloc]initWithString:title attributes:attrsDictionary]; [button setAttributedTitle:attrString]; } -(void)awakeFromNib { NSString *title = @"+Add page"; NSColor *color = [NSColor greenColor]; [self setButtonTitleFor:button toString:title withColor:color]; }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With