package demotest;
import org.eclipse.swt.*;
import org.eclipse.swt.widgets.*;
/**
*
* @author mositure
* 容器Composite学习
*/
public class CompositeTest {
/**
* @param args
*/
public static void main(String[] args) {
//创建一个display对象。
Display display=new Display();
//shell是程序的主窗体
final Shell shell=new Shell(display);
shell.setText("Composite");
// Composite的常用方法:
// getLayout():得到布局管理器。
// getLayoutData():得到布局数据。
// getParent():得到容纳该容器的父容器。
// getShell():得到容纳该容器的Shell。
// layout():将容器上的组件重新布局,相当于刷新。
//容器创建
Composite composite=new Composite(shell,SWT.BORDER);
composite.setBounds(10,10,500,50);
Label lable = new Label(composite,SWT.NONE);
lable.setText("容器1");
lable.pack();//自动调整文本框的大小
Composite composite1=new Composite(shell,SWT.BORDER);
composite1.setBounds(700,10,500,50);
Label lable1 = new Label(composite1,SWT.NONE); //若不这只Label不设置大小则不显示
lable1.setText("容器2");
lable1.pack();//自动调整文本框的大小
//打开主窗体
shell.open();
//如果主窗体没有关闭
while(!shell.isDisposed()){
//如果display不忙
if(!display.readAndDispatch()){
//休眠
display.sleep();
}
}
//销毁display
display.dispose();
}
}
这篇博客详细介绍了如何在SWT程序中使用Composite面板,包括创建Composite、设置布局和边界,以及调整子组件大小的方法。通过示例代码展示了如何创建两个带有边界的Composite容器,并添加Label显示文本。
549

被折叠的 条评论
为什么被折叠?



