SWT标签大小未正确更新

我是Java / SWT的新手。 我在使用SWT标签时遇到了一些麻烦。

当我更新标签上的文本时,其大小未正确更新(标签被剪切,与原始大小相关)。 但是,如果我在对话框中执行非常小的resize,则会正确更新大小。

基本上,我使用默认文本创建标签,然后,当我加载数据时,我使用真实文本更新标签,该标签比原始文本更大。

我试着没有运气就调用了label.update()label.redraw()

尝试调用parent.layout() ,其中parent是包含标签的Composite 。 另请参阅了解SWT中的布局 。

我知道这是旧的,但为了不丢失可能在控件上设置的任何LayoutData设置。 你应该调用getParent().requestLayout() 。 该文档特别不鼓励getParent().layout()的用户丢失控件上的所有缓存数据设置。