简介
开放源码 Eclipse 项目是 Java 领域中最有趣的新近开发项目之一。Eclipse 把自己描述成“一种通用的工具平台 — 开放的可扩展 IDE,可用于任何用途且没有特殊之处”。它的两个主要组件是名为 SWT 的图形库和与其匹配的名为 JFace 的实用程序框架。
SWT 是一个窗口构件集和图形库,它集成于本机窗口系统但有独立于 OS 的 API。
JFace 是用 SWT 实现的 UI 工具箱,它简化了常见的 UI 编程任务。JFace 在其 API 和实现方面都是独立于窗口系统的,它旨在使用 SWT 而不隐藏它。图 1 演示了 Eclipse、JFace 和 SWT 之间的关系。
图 1. Eclipse Workbench、JFace 和 SWT Hello, World
让我们从我能想到的最简单的 JFace 程序开始,逐步扩充它,将其构建为最常见的“Hello, World”程序。
清单 1. Hello(版本 1)
import org.eclipse.jface.window.*;
import org.eclipse.swt.widgets.*;
public class Hello
{
public static void main(String[] args)
{
ApplicationWindow w = new ApplicationWindow(null);
w.setBlockOnOpen(true);
w.open();
Display.getCurrent().dispose();
}
}
这里我们创建了一个名为 Hello 的类,其中 main 方法仅仅创建了一个 ApplicationWindow,然后打开它。setBlockOnOpen() 使 open() 阻塞,直到窗口关闭为止。在窗口已关闭之后,我们获取当前的 Display 并除去它。这会释放在操作系统中用到的资源。当您运行该程序时,您会看到类似图 2 的窗口:
图 2. Hello(版本 2)
就是如此。它甚至没有说“Hello, World”。在修正它之前,让我们把话题转到 JFace 窗口。
[1] [2] [3] [4] [5] [6] [7] 下一页