可可新手在这里:我似乎首先进入所有真正神秘的东西。我想要一个NSTextField,在单击时默认选择内容,并且我可以在其中更改选择颜色。我在这个论坛上找到了足够的东西让我开始了现场编辑的奥秘。我有NSTextField子类,并且覆盖了becomeFirstResponder方法:
- (BOOL) becomeFirstResponder {
if (!super.becomeFirstResponder) return NO;
NSTextView * fieldEditor = (NSTextView *) [self.window fieldEditor:YES forObject:self];
[fieldEditor performSelector:@selector(selectAll:) withObject:fieldEditor afterDelay:0];
[fieldEditor setSelectedTextAttributes:selectionColor];
return YES; }
其中selectionColor是一个单项NSDictionary,其NSColor对象键入NSBackgroundColorAttributeName。这适用于窗口和面板上的文本字段,但对于NSPopover视图中的字段完全不起作用。实际上,它使文本选择变得不可能。仍然可以单击该字段并键入,但将光标拖动到文本以选择它失败。我只能得出结论,我错误地配置了字段编辑器。我是否正确引用它?
答案 0 :(得分:0)
我希望我在回答我自己的问题时遵循stackOverflow协议。简短的回答是,显然,我发布的代码非常适合NSPopovers。我认为它不起作用的可能原因是我调用selectionColor的NSDictionary对象没有被正确初始化。我在这里有一个Emily Litella的时刻:“哦......没关系!”现在我唯一的问题是,我花了很多时间来追踪这个问题。