2017-05-03 92 views
1

在一個macOS項目中,我試圖獲取並設置NSTableView的滾動光標位置,代碼似乎工作,因爲不顯示錯誤,但光標不更新。如何保存並恢復Swift中的NSScrollView滾動位置?

var clipOrigin = tableView.enclosingScrollView?.contentView.bounds.origin // get the position 
    clipOrigin = CGPoint (x: 0.0, y: 3.0) // set a new position 
    tableView.enclosingScrollView?.contentView.scroll(to: clipOrigin!) // set the new position 

我忘了什麼嗎?

+0

[在插入行時保留相同的NSTableView滾動位置](http://stackoverflow.com/q/41965201/2227743) – Moritz

回答

0

contentView.bounds.origin幾乎肯定會給你一點0,0幾乎總是因爲這不是你所期待的價值。 bounds告訴你有關顯示畫布的視圖位置的信息,而不是滾動文檔的內部偏移量。

我猜一個-documentRect-documentVisibleRect屬性包含您正在尋找適當的偏移值。