アットウィキロゴ

Eclipseプラグイン > TreeViewer



ツリーから特定のアイテムを取得する


特定のアイテムに対して操作したい、ということは多々あります。
そういうときには、getInput()で今表示しているリストを取得し、その中から探します。
※getInput()の戻りは、setInputした時の型でキャストできます。
// setInputした時
List<TreeViewerModel> modelList = new ArrayList<TreeViewerModel>();
・・・(modelListにアイテムをセット)
treeViewer.setInput(modelList);
 
// ↑のツリービューアからname属性と指定値nameが一致するアイテムを探す例
List<TreeViewerModel> modelList = (List<TreeViewerModel>) treeViewer.getInput();
	for(TreeViewerModel model : modelList){
			if(model.getName.equals(name)){
				return model;
			}
	}
 


ツリーを展開する


expandメソッドを使用する。
  • 全展開する場合
treeViewer.expandAll();
 
  • 特定の階層だけ展開する場合
treeViewer.expandToLevel(int level)
 
  • 特定のアイテム以下だけ展開する場合
treeViewer.expandToLevel(Object elementOrTreePath, int level)
 
※↑のelementOrTreePathは、TreeViewerにセットしたモデル型でOK。
現在表示している一覧を取得→目的のアイテムを探す→探したアイテムをexpand の流れ。
目的のアイテムの探し方は→ツリーから特定のアイテムを取得する



ツリーの特定アイテムを選択状態にする


特定アイテムを選択状態(背景ハイライト)にしたいときはsetSelection(ISelection selection)を使います。
IStructuredSelection selection =  new StructuredSelection(model);
treeViewer.setSelection(selection);
 
特定アイテム(この場合のmodel)の取得方法は→ツリーから特定のアイテムを取得する








.
最終更新:2012年03月05日 16:43
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。