cocoa – 如何确定NSTextFieldCell何时突出显示没有焦点?

cocoa – 如何确定NSTextFieldCell何时突出显示没有焦点?,第1张

概述我已经将NSTextFieldCell(在NSTableView内)子类化为在选择单元格(即行)时绘制自定义前景色(例如,高亮显示为真)并且一切正常. 问题是当表视图失去焦点我想用不同的颜色绘制选定的行时,如何确定包含单元格的表视图是否不是drawWithFrame中的第一个响应者:(NSRect)cellFrame inView:(NSView *)controlView? 我目前的代码是 - 我已经将NSTextFIEldCell(在NStableVIEw内)子类化为在选择单元格(即行)时绘制自定义前景色(例如,高亮显示为真)并且一切正常.

问题是当表视图失去焦点我想用不同的颜色绘制选定的行时,如何确定包含单元格的表视图是否不是drawWithFrame中的第一个响应者:(NSRect)cellFrame inVIEw:(NSVIEw *)controlVIEw?

我目前的代码是

- (voID)drawWithFrame:(NSRect)cellFrame inVIEw:(NSVIEw*)controlVIEw {        NScolor* textcolor = [self isHighlighted]                 ? [NScolor alternateSelectedControlTextcolor]                 : [NScolor darkGraycolor];}
解决方法 我发现的最好的方法不会让你处理响应者(因为有时controlVIEw的supervIEw是响应者或一些废话)是使用编辑器:

BOol isEditing = [(NSTextFIEld *)[self controlVIEw] currentEditor] != nil;

很简单!

总结

以上是内存溢出为你收集整理的cocoa – 如何确定NSTextFieldCell何时突出显示没有焦点?全部内容,希望文章能够帮你解决cocoa – 如何确定NSTextFieldCell何时突出显示没有焦点?所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存