gpt4 book ai didi

objective-c - NSTextField nextKeyView 被忽略

转载 作者:行者123 更新时间:2023-12-03 17:19:43 34 4
gpt4 key购买 nike

  • 虽然我设置了 NSTextField 的 nextKeyView,但焦点是通过不同的 NSTextField 获得的

  • 尝试选中/取消选中“自动重新计算 View 循环”

  • 切换“完全键盘访问”

  • 还 try catch 标签

代码

- (BOOL)control:(NSControl*)control textView:(NSTextView*)textView doCommandBySelector:(SEL)commandSelector {

BOOL result = NO;

if (commandSelector == @selector(insertTab:)) {

// tab action:
result = NO;

}

return result;
}

返回是/否,厌倦了将下一个响应者设置为

[self.window makeFirstResponder:self.nextKeyView]

没有成功

最佳答案

使用 selectText: 选择 NSTextField,同时捕获“Tab”有效(请注意,您必须返回 YES,这意味着您正在处理 Tab)...您不能纯粹依赖 nextKeyView

将其放入您的 NSTextField 子类中并链接 nextKeyView

- (BOOL)control:(NSControl*)control textView:(NSTextView*)textView doCommandBySelector:(SEL)commandSelector
{
BOOL result = NO;

if (commandSelector == @selector(insertTab:)) {

// tab action:
// always insert a tab character and don’t cause the receiver to end editing
if ([self.nextKeyView isKindOfClass:[NSTextField class]]) {

[(NSTextField *)self.nextKeyView selectText:self];
result = YES;

} else {

//[textView insertTabIgnoringFieldEditor:self];
result = NO;

}

}

return result;
}

关于objective-c - NSTextField nextKeyView 被忽略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36357141/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com