如果我viewer.refresh()
同时关闭 UI 上的树查看器会怎样。
会发生什么,我该如何处理这种情况?
也许您周围有不止一个听众和树木?我建议在树中添加一个 disposeListener 并在其中放置一个断点。然后你会看到它什么时候被处理掉。
这不应该同时发生,因为 UI 事件(例如关闭或刷新)本质上是单线程的 - 它们只能一个接一个地发生(除非您在 dispose 中调用 refresh 或在刷新期间 dispose,但是两者其中很难证明是正常步骤)..
如果您的问题是由小部件的 SWT 错误引起的,那么您很可能以前已经处理了某些东西,但仍然调用了它的刷新方法 - 我会这样看。