2009-10-06 37 views
1

我有一個數據樹,我想以自頂向下的方式呈現給用戶,就像你看到的解析樹的方式一樣。從概念上講,這些數據與NSOutlineView會有什麼共同之處:層次結構,樹節點可以擴展和重新排序等。我試圖弄清楚我可能如何操作或子類NSOutlineView(或NSTableColumn ?)以獲得我想要的樹節點的可視化佈局,但我很難開始。有沒有人有任何提示去完成這項任務?我應該子類NSControl並從那裏開始?用NSOutlineView呈現數據樹?

編輯:我猜它歸結爲是我在試圖影響的輪廓繪製方式,這樣不是標準的介紹,你得到的東西看起來像this。我的主要問題是,我不知道如何控制數據單元何時何地繪製其內容。本來我以爲NSTableColumn是負責繪製自己,但似乎我錯了。那麼所有由NSOutlineViewdrawRect:方法完成的單元佈局呢?

+1

這可能是值得去更多的細節,你想做什麼NSOutlineView不做。 – 2009-10-06 02:49:45

+0

我同意提摩太。 NSOutlineView已經是一種非常理想的方式來呈現樹形格式的分層數據。 – 2009-10-06 02:52:58

回答

4

我想弄清楚我如何能夠操縱或爲了得到我想要的樹節點的可視佈局繼承NSOutlineView(或NSTableColumn?),但我有一個困難時期入門。

NSTableColumn是表視圖(或大綱視圖,這是一種表視圖)中的一列。

我應該只是子類NSControl,並從那裏開始?

這將是艱難的方式。

編輯:哦,你的意思是將數據呈現爲樹而不是大綱。是的,絕對是自定義控件或視圖。

有沒有人有任何提示,以完成此任務的好方法?

任命擁有你的模型作爲大綱視圖的數據源中的控制器對象,並使其符合the NSOutlineViewDataSource protocol

+0

該死的,困難的方法:)雖然我猜測它比試圖讓NSOutlineView做一些它不想做的事更容易。 – 2009-10-06 04:57:12