gpt4 book ai didi

cocoa - NSTextView 不会成为第一响应者

转载 作者:行者123 更新时间:2023-12-03 16:50:41 25 4
gpt4 key购买 nike

这是我的小测试应用程序的布局:

  1. AppDelegate 拥有 WindowController
  2. WindowController 拥有 CustomTextContainerView
  3. CustomTextContainerView 拥有一个嵌入 MyCustomTextView(NSTextView 子类)的 NSScrollView

标准 MainMenu 和我的窗口 Controller 的 xib 都相对空。我的窗口 Controller 的 -windowDidLoad 看起来像这样:

- (void)windowDidLoad {
[super windowDidLoad];
// create CustomTextContainerView
[[self window] setContentView:self.customTextContainerView];
}

我想做的是设置第一响应者到textView,但我已经尝试了我能想到的一切来让它工作。

我已经做到了,CustomTextContainerView 只是将 -becomeFirstResponder 转发到其 textView。我尝试过直接在容器和 textView 上调用它,但我无法让它自动成为第一响应者。

注意:用户仍然可以单击文本区域并开始输入,但我想做的是自动设置第一响应者状态,这样我就不必在开始之前单击打字。我错过了什么?

最佳答案

要强制窗口的第一响应者,请调用以下命令:

[[self window] makeFirstResponder:self.customTextContainerView];

(这假设第一响应者状态所需的所有其他功能均已启用,例如 View 不能覆盖 acceptsFirstResponder 以返回 NO。)

关于cocoa - NSTextView 不会成为第一响应者,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11488657/

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