我有一个TitleAreaDialog
with a TableViewer
,它允许用户从表中选择一行。问题是,表格的内容可能会随着时间而改变。我想实现浏览器中常见的刷新行为(例如,通过按下F5表的内容应该刷新)。
下面是一个屏幕截图,希望能让场景更清晰一些:
看起来这个问题有一个可能的解决方案,但我认为它存在缺陷有几个原因:
- 侦听器未正确分离(例如,如果我重新打开对话框,我的 . 上有两个过滤器
Display
) - 从架构的角度来看,它不会将侦听器添加到我认为它所属
TitleAreaDialog
的地方。Widget
- 我想避免手动连接/分离监听器(例如,监听器应该与
TitleAreaDialog
.
长话短说:在不使用上述问题中描述的过滤器机制的情况下,将 a 添加KeyListener
到 a TitleAreaDialog
(或 一般而言)的正确方法是什么?Dialog
我知道这个问题在SSCCE部门有些失败,但任何指向正确方向的指针都受到高度赞赏。