Swift 以编程方式禁用mac os x中的内置键盘?

Swift 以编程方式禁用mac os x中的内置键盘?,swift,xcode,macos,cocoa,keyboard,Swift,Xcode,Macos,Cocoa,Keyboard,有没有办法在macos x中禁用键盘 我正在寻找一种在应用程序中使用此功能的方法。所以,最好是一些可以通过编程来完成,并且不需要根前缀的东西 我希望键盘在操作系统中的任何地方都可以使用,即使应用程序在后台,直到我通过按butten(例如)来启用它 我是mac os编程新手,希望您能详细介绍: 更新:我正在尝试使用这个:但无法让它工作。现在有人知道如何在swift 3中工作吗?您可以覆盖keyDown和keydup事件,并在不调用其超类的情况下离开该函数 override func keyDown

有没有办法在macos x中禁用键盘

我正在寻找一种在应用程序中使用此功能的方法。所以,最好是一些可以通过编程来完成,并且不需要根前缀的东西

我希望键盘在操作系统中的任何地方都可以使用,即使应用程序在后台,直到我通过按butten(例如)来启用它

我是mac os编程新手,希望您能详细介绍:


更新:我正在尝试使用这个:但无法让它工作。现在有人知道如何在swift 3中工作吗?

您可以覆盖keyDown和keydup事件,并在不调用其超类的情况下离开该函数

override func keyDown(with event: NSEvent) {
    //super.keyDown(event)
}
override func keyUp(with event: NSEvent) {
    //super.keyUp(event)
}
以上代码适用于NSTextView

对于NSTextField,应手动删除输入的字母。至于NSTextfield,重写时将不会调用keyDown事件

override func keyUp(with event: NSEvent) {
    self.stringValue = ""
}

我使用了这些技术,但不确定这是否是正确的方法。。。但它是有效的:P

谢谢你的回复,但让我说清楚。我想完全禁用键盘,任何输入,任何地方,而不仅仅是在应用程序中。这是行不通的。我想基于单击按钮禁用/启用键盘。谢谢你。