在我看来, 布局的缓存已过时,需要刷新 。
SWT中的布局支持缓存,并且通常会缓存控件的首选大小,或者它们想要缓存的内容:
public abstract class Layout { protected abstract Point computeSize (Composite composite, int wHint, int hHint, boolean flushCache); protected boolean flushCache (Control control) {...} protected abstract void layout (Composite composite, boolean flushCache);}我对SWT编程(以前的Swing程序员)比较陌生,但是遇到类似的情况,其中布局没有正确更新。我通常能够使用 其他
布局方法来解决它们,这也会导致布局刷新其缓存:
layout(boolean changed)layout(boolean changed, boolean allChildren)



