macos – 在突出显示时更改NSButton的背景颜色

macos – 在突出显示时更改NSButton的背景颜色,第1张

概述我有一个NSButton,当它突出显示时,我希望有一个不同的背景颜色,而不是它(没有突出显示透明,如果这有任何区别). 目前,我有以下代码 [view setWantsLayer:YES];NSButton* button = [[NSButton alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];[button setBordered:FAL 我有一个NS@R_301_5554@,当它突出显示时,我希望有一个不同的背景颜色,而不是它(没有突出显示透明,如果这有任何区别).

目前,我有以下代码

[vIEw setWantsLayer:YES];NS@R_301_5554@* @R_301_5554@ = [[NS@R_301_5554@ alloc] initWithFrame:CGRectMake(0,100,100)];[@R_301_5554@ setbordered:FALSE];[(NS@R_301_5554@Cell*)[@R_301_5554@ cell] setHighlightsBy:NSChangeBackgroundCellMask];[vIEw addSubvIEw:@R_301_5554@];

这将在单击时将背景更改为默认窗口背景颜色.如果我删除NSChangeBackgroundCellMask,背景就会消失.

有没有一种简单的方法可以为背景设置不同的颜色,或者这是否需要我继承NS@R_301_5554@?

解决方法 最后,我通过继承NS@R_301_5554@Cell和覆盖来解决它

- (voID) highlight:(BOol)flag withFrame:(NSRect)cellFrame inVIEw:(NSVIEw*)controlVIEw

进行我想要的更改(根据标志更改controlVIEw.layer.backgroundcolor)

总结

以上是内存溢出为你收集整理的macos – 在突出显示时更改NSButton的背景颜色全部内容,希望文章能够帮你解决macos – 在突出显示时更改NSButton的背景颜色所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1017352.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存