这是一个答案,而不是一个问题.在网上搜索时,我只找到了这个问题的真正被歪曲的答案( www.cocoabuilder/archive/cocoa/58379-changing-the-text-color-of-an-nsmenuitem-in-an-nspopupbutton.html ),可以这样更优雅地回答:
This is an answer, rather than a question. Searching online, I only found a really hacked, contorted answer to this question (www.cocoabuilder/archive/cocoa/58379-changing-the-text-color-of-an-nsmenuitem-in-an-nspopupbutton.html), which can be answered more elegantly like so:
NSArray *itemArray = [scalePopup itemArray]; int i; NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys: [NSColor redColor], NSForegroundColorAttributeName, [NSFont systemFontOfSize: [NSFont systemFontSize]], NSFontAttributeName, nil]; for (i = 0; i < [itemArray count]; i++) { NSMenuItem *item = [itemArray objectAtIndex:i]; NSAttributedString *as = [[NSAttributedString alloc] initWithString:[item title] attributes:attributes]; [item setAttributedTitle:as]; } 推荐答案请注意,上面的问题实际上就是答案.网络上有很多链接,它们基于旧版API的解决方案太复杂,我认为写这篇文章作为参考会很有帮助.
Just a note here that the question above is in fact the answer. There are a lot of links on the web with too complex solutions based on older APIs and I thought it would be helpful to write this posting as a reference.
更多推荐
如何设置NSPopupButton菜单项的颜色
发布评论