ユーザーがテーブルから行を選択できるようにする がありますTitleAreaDialog
。TableViewer
問題は、テーブルの内容が時間の経過とともに変化する可能性があることです。ブラウザーで一般的に見られる更新動作を実装したいと思います (たとえばF5、テーブルのコンテンツを押して更新する必要があります)。
以下は、うまくいけばシナリオをもう少し明確にするスクリーンショットです。
この質問には解決策があるようですが、いくつかの理由で問題があると思います。
- リスナーが適切に切り離されていません (たとえば、ダイアログを再度開いた場合、 に 2 つのフィルターがあります
Display
) 。 - アーキテクチャの観点から、リスナーが属していると思われる場所に
TitleAreaDialog
リスナーを追加することはありません。Widget
- 手動でリスナーをアタッチ/デタッチすることは避けたいです (たとえば、リスナーは と一緒に破棄する必要があります
TitleAreaDialog
) 。
簡単に言えば、前述の質問で説明されているように、フィルターメカニズムを使用せずに(または 一般的に) KeyListener
aを追加する適切な方法は何ですか?TitleAreaDialog
Dialog
この質問がSSCCE部門で多少失敗することはわかっていますが、正しい方向への指針は高く評価されます。