2011-12-05 10 views
1

jfaceテーブルビューアがあり、ビューを起動する行を選択する際に選択リスナを実装する必要があります。 私はでそれを実装している:複数の選択を許可せずにjfaceテーブルビューアテーブルの行に選択リスナを追加します。

viewer.getTable().addListener(SWT.Selection, new Listener() { 
@Override public void handleEvent(Event e) 
{ 
    try { 
     PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage().showView("E2E_tab_view.view5"); 
     } 
     catch (PartInitException e1) 
     { 
     e1.printStackTrace(); 
     } 
     }}); 

しかし、私はこれで複数選択の問題に直面しています。私は実際に行の複数の選択を許可したくないが、今は必要ではない複数の行を選択することができます。

これを実行するのに誰も助けてくれますか。行を選択するか、行ビューのクリックで機能を有効にする必要があります。

+0

SWT.SelectedではなくSWT.EraseItemを使用する必要がありますか? SWT.Selectedからのイベントは、選択されたアイテムを与えることができ、イベントブロックで他のアイテムの選択を解除できます。 – Thomas

+0

代わりに 'SWT.Selected'イベントを使うべきだと私は@Thomasに同意します。限り、複数の選択については私の答えを参照してください。 – p12t

答えて

4

テーブルで複数選択が可能な場合は、おそらくSWT.MULTIスタイルビットを使用してテーブルを作成しているので、代わりにSWT.SINGLEを使用してください。後者はWindowsのデフォルトです。これは他のOSでは異なる場合があります。

+0

ありがとうたくさん...これは働いていた::) –

関連する問題