禁用的tableview与所有元素
问题描述:
我与SWIFT 4工作MacOS和我有一个NSButton,应禁用我NSTableView的所有元素(文本框,按钮,...)禁用的tableview与所有元素
在我的按钮的IBAction为我此代码行:
myTableView.deselectAll(nil)
myTableView.isEnabled = false
这很好,但我发现了一点“bug”。 如果我选择我的桌面视图(编辑模式) 的文本框,然后按下我的按钮,桌面视图将被禁用,并且所有选定的行都将取消选择,但是我可以毫无问题地编辑我的文本框的内容,因为“编辑模式“仍然是。
必须手动禁用我在tableview中的所有文本字段,还是有一个优雅的技巧?
答
你可以失去的NSTextField以响应
view.window?.makeFirstResponder(view.window)
这应该做的伎俩。
小小的更正:我可以在我的按钮按下之前编辑**所有**我选择的那一行的文本框。用你的代码,我选择的文本域失去了焦点。但我可以选择这个和我上一次选择的行的其他文本字段并编辑它们,而不会出现问题oOO其他所有行和文本字段都“禁用” – Ghost108
您是否取消选择所有行并禁用表视图? – Raymond
'myTableView.deselectAll(nil) myTableView.isEnabled = false view.window?.makeFirstResponder(view.window)' – Ghost108