質問

私は(それが違いを作る場合)NSOutlineViewにバインドNSTreeControllerを持っている、と私は私の-awakeFromNib()内のすべてのノードを展開したいと思います。

私はまた、プログラム的に同時に最初のノードの最初の子を選択したいと思います。物事のこれらの種類は、テーブルビューとシンプルですが、輪郭はまったく私と一緒に協力していません。

おかげで、

リッチ

役に立ちましたか?

解決

  

私は)(私の-awakeFromNib内のすべてのノードを展開したいと思います。

のMac OS X 10.5のよう、[outlineView expandItem:nil expandChildren:YES]ます。

の配列を反復し、各項目を渡し、その後、マックOS Xの以前のバージョンでは、[outlineView itemAtRow:row]を使用して行ごとにアイテムを取得する行の数を0から反復する必要があります、そして配列にそれらのアイテムを格納しますexpandItem:expandChildren:方法に関するものです。アイテムを拡大し、そのすべての子孫が、その後の兄弟の行インデックスが変更されますので、(次の2つのループを混在させることはできませんので、最初にすべてのトップレベルのアイテムを収集する必要があり、あなたがそれらのすべてを持っていたら、それらを展開します。 )

  

私はまた、プログラム的に同時に最初のノードの最初の子を選択したいと思います。

直上後、それは行1になるだろう。

あなたはNSTableViewの方法のいずれかを使用しますので、

アウトライン・ビューは、テーブルビューの一種です。[outlineView selectRowIndexes:[NSIndexSet indexSetWithIndex:1] byExtendingSelection:NO]

他のヒント

あなたがデータソースからロードしている場合は、

dispatch_async(dispatch_get_main_queue(), ^{
  [self.outlineView expandItem:root expandChildren:YES];
});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top