Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用FormLayout调整组合的大小,当它';使比显示区域宽的子对象可见_Java_Swt_Resize_Form Layout - Fatal编程技术网

Java 使用FormLayout调整组合的大小,当它';使比显示区域宽的子对象可见

Java 使用FormLayout调整组合的大小,当它';使比显示区域宽的子对象可见,java,swt,resize,form-layout,Java,Swt,Resize,Form Layout,我正在使用SWT。我有一个父复合(级别1),它使用FormLayout,并且它还包含FormLayout的另一个复合(级别2)。此组合具有多个子项(级别3),这些子项根据用户输入而变为可见和不可见 问题场景: 3级复合材料不可见 1级合成已调整大小->此操作也将调整2级合成的大小 用户输入更改->3级合成现在可见 问题->2级合成不调整大小,3级合成不全部可见 我必须调整1级合成的大小,以使2级合成的大小正确,这不是非常用户友好。我尝试了很多东西,但都没有成功,因为这都是更大的应用程序的一部分,

我正在使用SWT。我有一个父复合(级别1),它使用FormLayout,并且它还包含FormLayout的另一个复合(级别2)。此组合具有多个子项(级别3),这些子项根据用户输入而变为可见和不可见

问题场景:

  • 3级复合材料不可见
  • 1级合成已调整大小->此操作也将调整2级合成的大小
  • 用户输入更改->3级合成现在可见
  • 问题->2级合成不调整大小,3级合成不全部可见
  • 我必须调整1级合成的大小,以使2级合成的大小正确,这不是非常用户友好。我尝试了很多东西,但都没有成功,因为这都是更大的应用程序的一部分,所以我不能用其他东西代替FormLayout

    有人对这个有意见吗?是否有某种机制可以使FormLayout组合动态调整大小

    谢谢,

    像每一个大胆的问题一样,这个问题也很容易解决。当使3级合成可见时,有必要调用
    getParent().layout()
    使2级合成正确调整大小