它完全取决于您如何将 contentText 放置在布局本身中。例如,如果您使用的是GridLayout
(只有一个)并且它是一个 1 X 2 网格(或者实际上是 n X 2,因为您只需要控制给定行中有多少列用于网格布局),然后您放置'right' 网格中的 contentText 对象,并像使用 gridData 一样实例化 contentText :
contentText.setlayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1,1));
让我们看看所有这些参数到底发生了什么。从 : swt api on GridData,您正在使用此构造函数:
GridData(int horizontalAlignment, int verticalAlignment, boolean grabExcessHorizontalSpace, boolean grabExcessVerticalSpace, int horizontalSpan, int verticalSpan)
好吧,这告诉我的是,我们希望我们的 contentText 使用 SWT.FILL 参数来进行水平和垂直对齐(我相信,使对象在水平和垂直方向上等间距)。您确实希望它尽可能多地抓住过多的水平和垂直空间,并且您希望它在水平和垂直方向上跨越一个网格元素。现在,虽然这本身不会覆盖并静态覆盖屏幕上的所有其余控件,但是当您调整大小时,您仍然在告诉 contentText 尽可能多地占用垂直空间(它在水平方向上受到限制由我想象的同一复合/网格布局中的其他对象,这就是为什么你在那里看不到任何覆盖的原因)。
现在,这可能是由于您如何构建整体组合/表单,以及哪些对象包含在哪些组合中等等。一个小因素会让事情变得很糟糕。然而,学习如何使用各种布局数据构造函数为您工作而不是反对您,在 SWT 中是一个巨大的好处。我会在这里看一下以更彻底地了解布局,并且实际上只需注意您正在制作的这些构造函数中的每个参数。很多时候您不需要完整的 6 参数构造函数,还有其他选项。
祝你好运!