- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的一个项目是一个测试应用程序,学生在打字时不应该能够轻松地查找单词。
在 NSTextView 中通过 setContinuousSpellCheckingEnabled:
关闭自动拼写检查相对容易。和 setAutomaticSpellingCorrectionEnabled:
.
刚发现simply tap with three fingers upon any selected word对学生来说很琐碎在任何应用程序中都会弹出一个有用的窗口,其中包含字典、同义词库,甚至是维基百科条目(如果可以在其中找到该词)。
这对 99% 的 MacOS 应用程序来说都是很棒的功能,但不适用于我的测试应用程序。
几个月后,Apple 为我提供了一个仅适用于 10.8 的(未记录且微妙的)解决方案,我最终可能会在下面的答案中提供它,但我 需要有一个适用于 10.7 的解决方案(这就是这个功能的用武之地)。
针对这个问题有三种可能的攻击计划,但我不确定如何处理这三种中的任何一种:
1)
我需要阻止此查找功能在此 TextView 中发生。
2)
我已经尝试删除字典首选项(如果它们存在;如果用户从未打开 Dictionary.app,则没有首选项)和字典缓存文件(在“~/Library/Cache
”中,但这似乎没有改善情况。
3)
或者有没有办法能够检测到“使用三指点击时使用查找”的触控板设置?它可能在某个 com.apple.*.plist 中,或者可以通过“defaults
”检测到,但我不确定在哪里。
编辑:
只剩下一点时间来解决这个问题并奖励赏金了。这是我尝试使用“defaults
”的方法:
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerTapGesture -bool false
defaults write com.apple.driver.AppleBluetoothMultitouch.trackpad TrackpadThreeFingerDoubleTapGesture -bool false
defaults read com.apple.driver.AppleBluetoothMultitouch.trackpad
”验证它们是否正确保存),字典查找窗口仍然出现。
- (void)quickLookWithEvent:(NSEvent *)event;
- (void)quickLookPreviewItems:(id)sender;
最佳答案
这个对类似问题的回答解决了这个问题而不会抛出异常,但它使用了私有(private) API:https://stackoverflow.com/a/20618984/959140
只需覆盖 -(void)quickLookWithEvent:(NSEvent *)event
在你的子类中,不要对事件做任何事情。
关于macos - 如何在 NSTextView 中禁用查找(字典、词库、维基百科)功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12830438/
我是一名优秀的程序员,十分优秀!