我正在撰写自定义NSMenuItem
视图。我希望能够在我的自定义NSImageNameMenuOnStateTemplate
视图的NSImageView
子视图中使用系统默认的“开启状态”菜单项图像(名为NSMenuItem
的图像)。
当未选择菜单项时,复选标记图像看起来很好。选择后,我需要以某种方式绘制白色而不是正常的深灰色图像。否则,深蓝色选中的菜单项背景几乎看不到深灰色复选标记:
如何绘制白色复选标记图像?
答案 0 :(得分:0)
我发现我可以通过设置与NSImageCell
相关联的NSImageView
的backgroundStyle来更改复选标记图像颜色。如果选择了菜单项,则将backgroundStyle设置为NSBackgroundStyleDark
将生成白色复选标记。如果未选择菜单项,则将backgroundStyle设置为NSBackgroundStyleLight
将生成正常的深灰色复选标记:
[stateImageView.cell setBackgroundStyle:(isSelected
? NSBackgroundStyleDark
: NSBackgroundStyleLight)];
如果禁用了菜单项,我可以通过禁用单元格来生成禁用的复选标记外观:
[stateImageView.cell setEnabled:NO];