swift - 在cocoa中,NSTextField没有响应

标签 swift macos cocoa

我只用源代码编写了 NSTextField 。但 NSTextField 不可点击,键盘事件也不起作用。

open class SearchBarView: ViewWrapper, NSTextFieldDelegate {
var textField: NSTextField!

---- TextField init
textField = NSTextField(frame: NSMakeRect(0, 0, 200, 60))
textField.isEditable = true
textField.font = NSFont.systemFont(ofSize: CGFloat(28.0))
textField.textColor = NSColor.gray
textField.isSelectable = true
textField.delegate = self

self.addSubview(self.textField)

---- func
open override func controlTextDidChange(_ notification: Notification)
{
    Swift.print("asdasd")
    let object = notification.object as! NSTextField
    self.textField.stringValue = object.stringValue
}

enter image description here

如何让键盘修复它?

最佳答案

为了使 NSTextfield 正常工作,如果您使用自定义窗口,请检查您的窗口是否是 keyWindow() 和 mainWindow() 是。

- (BOOL)canBecomeKeyWindow {
    return YES;
}
- (BOOL)canBecomeMainWindow {
    return YES;
}

如果您有自定义窗口,请尝试使用您的 swift 代码。

关于swift - 在cocoa中,NSTextField没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43906299/

相关文章:

ios - 如何使用 Parse Swift iOS 8 Xcode 6.4 注销

java - 将 args 传递到可执行 Unix 文件 (MacOS)

macos - 在 mac 上安装 GNU GCC

macos - 激活其他应用程序 - OSX

objective-c - NSTableView 中的动画行

swift - 如何在表格上创建两个不同的部分?

swift - 为什么我不能在 didSet 上赋值?

ios - UITableViewCell 大小与可选图像(Swift)

linux - 所有浏览器和操作系统的安全字体

python - Django 服务器的上传 API