当复合子项宽度大于显示区域时,使用 FormLayout 调整复合大小,使其可见



我正在使用SWT。我有一个使用FormLayout的父Composite(级别1),它包含另一个也是FormLayout(级别2)的Composite。此Composite有几个子级(级别3),它们根据用户输入而变为可见和不可见。

问题场景:

  1. 3级复合材料不可见
  2. 调整级别1组合的大小->这也会调整级别2组合的大小
  3. 用户输入更改->3级组合现在可见
  4. 问题->级别2的组合不调整大小,级别3的组合也不全部可见

我必须调整级别1组合的大小,以使级别2组合正确调整大小,这对用户来说不是很友好。我尝试过很多东西,但都没有成功,因为它都是更大应用程序的一部分,所以我不能用其他东西代替FormLayout。

有人对此有意见吗?是否有一些机制可以使FormLayout组合动态调整大小?

谢谢,一月

就像所有大胆的问题一样,这个问题也有简单的解决方案。当使3级复合物可见时,有必要调用getParent().layout()以使2级复合物正确调整大小

最新更新