[Eclipse笔记]一个最简单的SWT程序

来源:互联网 发布:湖南金科软件 编辑:程序博客网 时间:2024/04/30 09:01
我们来看一段最简单的SWT程序是什么样子:

package sean.test.swt;

import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class SimplestSWT {

    
public static void main(String[] args) {
        Display display 
= new Display();
        Shell shell 
= new Shell(display);
        shell.pack();
        shell.open();
        
while (!shell.isDisposed()) {
            
if (!display.readAndDispatch()) {
                display.sleep();
            }

        }

        display.dispose();
    }


}



这段代码运行时会显示一个空的窗体。比较有意思的是Shell shell = new Shell(display);这一句,通过它我们可以了解到:在SWT中,子控件在构建时会传入包含该子控件的母控件引用,更进一步,在一个母控件被销毁时,包含的自控件也会自动被销毁。几乎所有常见的SWT控件都是以这种方式处理的。由于SWT使用OS自带的API,SWT控件的创建和销毁就跟纯Java实现有些不一样。

在接触SWT之前,总觉得它遥不可及,真正看到具体的代码后才发觉,原来它近在咫尺。
原创粉丝点击