2017-05-20 41 views
0

我想將焦點設置在NSTableCellView中一個表格中的一個編輯字段中,該表格中的每列都有一列,以便用戶可以即時編輯該字段。 在我的示例中,我可以選擇行(按下按鈕之後),但是我無法找到將焦點設置在特殊字段上的方法。集中NSTableCellView中的一個字段進行即時編輯

我在我的例子,我想3

class MainVC: NSViewController, NSTableViewDataSource, NSTableViewDelegate 
{ var t = [Item]() 
    @IBOutlet weak var itemTV: NSTableView! 
    @IBAction func actionBu(_ sender: Any) 
    { 
    let indexSet = IndexSet(integer: 2) 
    itemTV.selectRowIndexes(indexSet, byExtendingSelection: false) 
    itemTV.scrollRowToVisible(2) 
    } 

enter image description here

enter image description here

+0

'NSTableView's'editColumn(_:row:with:select:)'''如何? – Willeke

+0

'UITextfield'有一個方法'becomeFirstResponder' – user1046037

+1

@ user1046037標籤osx和nstableview表示一個macOS問題,Apple說'becomeFirstResponder':「永遠不要直接調用這個方法」。 – Willeke

回答

0

感謝設置光標放在本標題字段行所有幫助的命令,我找到了一個解決方案

@IBAction func actionBu(_ sender: Any) 
    { self.view.window!.makeFirstResponder(itemTV.view(atColumn: 0, row: 2, makeIfNecessary: true)?.subviews[0]) 
    } 

適合我,

相關問題