0

私は日食RCPに不慣れであり、Javaにも事実問題があります。非常に基本的な質問があります。私はJFaceを持っていTreeViewerます。その中で特定のノードを拡張したいと思います。キャッチは、ノードの名前しか持っていないことです。それ以外の情報はありません。treeItemを使ってみて、その文字列を自分が持っているノード名の文字列と比較して、ノードを取得しました。ツリーのコンテンツプロバイダーで展開してみました。しかし、私は望ましい出力を得ていません。ログで確認すると、展開されているのにビューアに表示されないことがわかります。私はこれをdisplay.asyncExeccontentproviderのメソッドで実行しています。

質問が明確であることを願っています。

4

1 に答える 1

5

JFaceビューアは、開発者がSWTウィジェットをいじくり回す必要がなく、代わりに高レベルのAPIを使用できるように作成されました。JFaceのビューア/コンテンツプロバイダー/ラベルプロバイダーを使用する場合は、ツリー内のノードを制御する必要があります(したがって、名前しかわからないと言う場合は、SWTツリーを直接使用していると思います)。EclipseヘルプからJFaceビューアについて読むことができます。

ツリーノードを展開するには、のexpandToLevel(Object elementOrTreePath, int level)メソッドを使用しますTreeViewerレベルは、ツリーのルートではなく、展開されたノードを基準にしています)。

于 2011-12-23T09:20:39.983 に答える