1

多くの行を持つ JFaceTableViewer があります。JPAを使用して以前にフェッチしたこれらの行。フェッチ中の進行状況を表示するためにフェッチを別のスレッドに入れましたが、それは機能します。

ここで、各列に SelectionAdapter を配置して、その列で並べ替えできるようにしました。コードは次のとおりです。

private SelectionAdapter getSelectionAdapter(final TableColumn column, final String colName) {
    SelectionAdapter selectionAdapter = new SelectionAdapter() {
          @Override
          public void widgetSelected(SelectionEvent e) {
            comparator.setColumnName(colName);
            int dir = comparator.getDirection();
            resultTableViewer.getTable().setSortDirection(dir);
            resultTableViewer.getTable().setSortColumn(column);
            resultTableViewer.refresh();                
          }
        };
        return selectionAdapter;
      }

プログレスバーを表示するために別のスレッドでソートするためにこれらの行を実行するにはどうすればよいですか? resultTableViewer でメソッドを呼び出そうとするたびに、例外が発生しました: InvalidThreadAccess

何か案は?

4

2 に答える 2