0
我一定改變的東西打破這一行代碼在我的項目:NSTableView的,[表selectedCell]突然給了零值
[table selectedCell] //it gives nil value
但錶行被選中(它的高亮顯示)。 表格是基於單元格的。
可能是什麼原因?
UPDATE:我剛剛在文檔中看到此方法在10.10中已被棄用。但是,我應該使用什麼來獲取當前選定的單元格?
我一定改變的東西打破這一行代碼在我的項目:NSTableView的,[表selectedCell]突然給了零值
[table selectedCell] //it gives nil value
但錶行被選中(它的高亮顯示)。 表格是基於單元格的。
可能是什麼原因?
UPDATE:我剛剛在文檔中看到此方法在10.10中已被棄用。但是,我應該使用什麼來獲取當前選定的單元格?
這真的取決於你想要做什麼。 -selectedCell
不是專用於NSTableView
;它繼承自NSControl
,對於表格視圖並不特別有用。單個單元格不能被「選中」,但行或列可以。
單元格可以編輯。那是你想要發現的嗎?目前正在編輯哪個單元格?如果是這樣,您可以使用-editedRow
和-editedColumn
。否則,您可以獲取選定的行/行索引或選定的列/列索引,但是行和列選擇是相互排斥的,並且可能包含多個單元組。因爲NSControl
的-selectedCell
只能給你一個單元格,所以你永遠不會真正能夠在表格視圖中使用該方法獲得有意義的答案。但是,當然一次只能有一個單元格編輯爲。
因此,它是選擇或編輯你要找的?
我不明白你的問題。你說_selectedCell_給出零,但_row_被選中。 _cell_不是_row_,_row_不是_cell_。你想實現什麼?你的_tableView_ cellBased或是它的viewBased?這可能會有所作爲。而且它被棄用僅僅意味着:它仍然有效,但是尊重未來! –
@ HeinrichGiesen我明白,行不是一個單元格,並且行不是一個單元格。但我的意思是表中有一個選擇,它不是未選中的。該表是基於單元格的表格。我知道它應該工作,即使不贊成,我的意思是,因爲它現在被破壞了,也許這是改變代碼的好機會。 – aneuryzm