鼠标离开 NSWindow 时 NSTextField 失去焦点/FirstResponder

Posted

技术标签:

【中文标题】鼠标离开 NSWindow 时 NSTextField 失去焦点/FirstResponder【英文标题】:NSTextField losing Focus/FirstResponder when mouse leaves NSWindow 【发布时间】:2014-07-03 14:19:11 【问题描述】:

我在 NSWindow 中有一个 NSTextField,当我突出显示要更改的文本时,突出显示为蓝色。如果在 TextField 仍然有焦点时,我将鼠标移到 NSWindow 之外;我的 NSTextField 失去焦点,突出显示现在是灰色的。无论鼠标在哪里,我基本上都希望将注意力集中在 NSTextView 上,除非他们在外部单击、按 Enter 或按 Tab。 (结束编辑)

有没有人以前见过这个或知道问题的解决方案?

提前致谢

【问题讨论】:

您是否可能使用某些第三方软件在您的 Mac 上实现焦点跟随鼠标行为? 不,我不这么认为:\ 我正在做一些深入的调试,试图找到 TextField 失去焦点的时刻,但我什至无法做到这一点 您能否通过一个新的简单项目来重现,您只需将文本字段添加到窗口、构建和运行?如果您从不同的用户帐户使用构建的应用程序,也会发生这种情况吗?您可以尝试在-[NSTextView resignFirstResponder] 和/或-[NSWindow makeFirstResponder:] 上设置断点,并查看回溯以了解其发生原因的线索。 【参考方案1】:

原来是外部视图有一个可以控制鼠标的 mouseentered 事件的问题

【讨论】:

以上是关于鼠标离开 NSWindow 时 NSTextField 失去焦点/FirstResponder的主要内容,如果未能解决你的问题,请参考以下文章

根据点击位置丢弃 NSWindow 上的鼠标事件

可拖动的 NSWindow 闪烁

窗口NSWindow

如何以编程方式关闭全屏模式NSWindow?

为啥我的 NSWindow 第一次只接收 mouseOver 事件?

在 Actionscript 3 中拖动时检测鼠标离开阶段