在Swift中检测NSTextField上的粘贴操作
问题描述:
我想在将其完全粘贴到NSTextField之前配置一些文本。在Swift中检测NSTextField上的粘贴操作
是否有一种(简单)的方法来检测用户是否粘贴文本而不是将其写入到Swift中的NSTextField中?
答
为什么不检查更改的大小?您可以实现的委托方法,并做一些事情,如:
func textDidChange(notification: NSNotification) {
let textField = notification.object
let newTextLength = textField.text.characters.count
...
您现在可以比较与前一个文本的长度(你会在某个地方存储),如果它超过1个字符改变,那么用户正在粘贴一些东西。我希望这有帮助。
答
nstextfield没有复制和粘贴功能。这些只能在nstextview中找到。值得注意的是当编辑一个文本字段时,它会在编辑过程中打开一个名为fieldeditor的文本视图。
见我的答案在这里:
这里有一个想法:我没有张贴作为一个答案,因为现在我没有测试过这一点,真的没有那种时间,但您可以尝试使用Interface Builder将“编辑”菜单>“粘贴”按钮链接到您自己的功能。这将允许您在用户粘贴内容时执行操作。 – Arc676