技术开发 频道

Eclipse开发经典教程:SWT布局

GridData的相关属性

GridLayout布局的灵活之处在于它利用网格布局数据GridData。通过GridData可以设置子组件在网格中的填充方式、大小边距等信息,用户可以通过子组件的setLayoutData方法设置网格布局数据。

GridData可以控制子组件在网格中的位置大小等相关显示信息。GridData可以设置如下的一些属性。


●HorizontalAlignment:表示水平对齐方式。水平对齐方式有如下几种,如表4所示,其中“Button5”按钮显示了水平对齐的方式。
●VerticalAlignment:表示子组件的垂直对齐方式,值和水平方式一样。
●HorizontalIndent:表示子组件水平偏移多少像素。

此属性和“horizontalAlignment = GridData.BEGINNING”属性一起使用。下面代码设置“Button5”水平偏移4像素,如图3所示。

GridData gridData = new GridData(); gridData.horizontalIndent = 4; button5.setLayoutData(gridData);

 HorizontalSpan:表示组件水平占据几个网格。

此属性非常有用,当要设置一个组件占据几个单元格时,需要设置HorizontalSpan属性。例如,下面代码设置“Button5”按钮水平占据两个网格,如图4所示。

GridData gridData = new GridData(); gridData.horizontalAlignment = GridData.FILL; gridData.horizontalSpan = 2; button5.setLayoutData(gridData);

 

      
         图3 组件水平偏移                  图4 水平占据网格


 ●VerticalSpan:表示组件垂直占据几个网格。
 ●GrabExcessHorizontalSpace:表示当父组件大小改变时,子组件是否以水平方向抢占空间。
 ●GrabExcessVerticalSpace:表示当父组件大小改变时,子组件是否以垂直方向抢占空间。
 ●WidthHint:表示子组件的宽度为多少像素(前提是未设置其他相关属性)。
 ●HeightHint:表示子组件的高度为多少像素(前提是未设置其他相关属性)。

另外,GridData可以通过构造函数指定相应的属性值,有兴趣的读者可以参考GridData类的构造函数。

0
相关文章