java swt 布局_SWT中的布局之-----FormLayout(表格式布局)

本文详细介绍了SWT中的FormLayout布局管理器,包括如何使用marginWidth和marginHeight设置边距,以及FormData和FormAttachment类的用法。通过实例展示了如何利用FormLayout实现复杂的界面布局,强调了其在特定场景下的优势。
摘要由CSDN通过智能技术生成

表格式(FormLayout类) 表格式布局管理器,通过创建组件各个边的距离来布局组件,和GridLayout一样强大.

用GridLayout与FormLayout都可以实现相同的界面效果,但有时使用后者会更有效,而且不会像GridLayout因为容器大小变化而导致布局错位.

使用marignWidth,marginHeight设置边距(这两个属性,来设置容器的左边距和上边距(单位:像素))

使用FormData的构造函数(FormLayout也有自己的布局数据类,他的使用方法是new FormData()或new FormData(int width,int height))

FormAttachment类的用法

FormAttachment是在FormData下的,更进一步的布局数据类,它的用法主要体现在它不同的构造函数中.

FormLayout1.java

69c5a8ac3fa60e0848d784a6dd461da6.png

1 importorg.eclipse.swt.SWT;2 importorg.eclipse.swt.layout.FormLayout;3 importorg.eclipse.swt.widgets.Button;4 importorg.eclipse.swt.widgets.Display;5 importorg.eclipse.swt.widgets.Shell;6

7 public classFormLayout1 {8 public static voidmain(String[] args) {9 final Display display =Display.getDefault();10 final Shell shell = newShell();11 shell.setSize(327, 253);12 //---------创建窗口中的其他界面组件-------------

13 FormLayout formLayout = newFormLayout();14 formLayout.marginWidth = 100; //左边距,单位:像素

15 formLayout.marginHeight = 50; //上边距

16 shell.setLayout(formLayout);17 new Button(shell, SWT.NONE).setText("button1");18 //-----------------END------------------------

19 shell.layout();20 shell.open();21 while (!shell.isDisposed()) {22 if (!display.readAndDispatch())23 display.sleep();24 }25 display.dispose();26 }27 }

69c5a8ac3fa60e0848d784a6dd461da6.png

f062eca7f1daeb533eaf3e714070d984.png

1.使用marginWidth,marginHeight设置边距

这两个属性用来设置容器的左边距和上边距(单位:像素).下面给出一个具体的实例:

69c5a8ac3fa60e0848d784a6dd461da6.png

1 public classFormLayout1 {2 public static voidmain(String[] args) {3 final Display display =Display.getDefault();4 final Shell shell = newShell();5 shell.setSize(327, 253);6 shell.setText("SWT Application");7 //------------------新插入的界面核心代码------------------------

8 FormLayo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值