2017-06-12 14 views
1

私は4-5行のツリービューアを持っています。任意の行をクリックすると選択されますが、ビューア内の他の場所(追加された行以外の領域)をクリックすると、選択した行が選択されたままになります。Jface Treeviewerで行を選択解除できません

私が望むのは、ユーザーがツリービューアの空き領域をクリックすると、選択が削除されるはずです。

私はすでに、以下試してみました:行の選択を解除するには、ツリーの

  1. treeviewer does not deselect the tree item

  2. SelectionListenerを - しかし、コントロールが

答えて

0

私は同じ問題に直面していた届きませんある日、残念ながら問題の解決策は見つけられませんでした。

しかし、私は回避策でした:

  1. treeviewer
  2. 使用treeviewerのGetItemメソッドにリスナーを、マウスを下に追加し、イベントから、それにマウスの座標を渡します。それがnullの場合のgetItemメソッドから受け取ったアイテムは
  3. nullである
  4. チェックすると、それだけです

をtreeViewer.setSelection(StructuredSelection.EMPTY)を呼び出します。

Jface/SWTのバグのようなものかどうかはわかりません。

+0

これは問題ありませんが、ツリーのセクションを展開/折りたたむために 'twistie'をクリックすると選択が解除されます。 –

+0

@ greg-449 - わかりませんが、以前の選択をクリアしておらず、期待どおりに動作していません。私はSWT.BORDERスタイルのツリービューアを作成しています。 SWT.FULL_SELECTION | SWT.MULTI –

関連する問題