SWT是Standard Widget Toolkit的缩写。 我不想解释它的好处,请在Google上搜索它。 如果您想进一步了解SWT官方网站,请访问它。
这是简单的SWT Hello World程序
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
public class SWTHelloWorld {
public static void main (String [] args) {
Display display = new Display ();
Shell shell = new Shell(display);
Text helloWorldTest = new Text(shell, SWT.NONE);
helloWorldTest.setText("Hello World SWT");
helloWorldTest.pack();
shell.pack();
shell.open ();
while (!shell.isDisposed ()) {
if (!display.readAndDispatch ()) display.sleep ();
}
display.dispose ();
}
}
PS为了运行上面的SWT示例,我们必须将SWT库导入Eclipse工作区。
请访问我的上一篇文章如何将SWT库导入Eclipse Workspace?
说明
上面的SWT示例将创建一个TextBox并将其显示为“ Hello World”。
大多数SWT应用程序包含三个阶段的结构。
1.)初始化阶段–创建显示和Shell实例
Display display = new Display ();
Shell shell = new Shell(display);
2.)设计(业务登录)阶段–创建一个文本小部件以显示“ Hello World SWT”
Text helloWorldTest = new Text(shell, SWT.NONE);
helloWorldTest.setText("Hello World SWT");
helloWorldTest.pack();
3.)显示阶段–完成所有编码后,调用shell.open方法时,所有应用程序的GUI都会呈现在显示中。 Display类使用display.readAndDispatch()来跟踪在关闭窗口等应用程序中发生的相关用户事件。
shell.pack(); //optional
shell.open ();
while (!shell.isDisposed ()) {
if (!display.readAndDispatch ()) display.sleep ();
}
display.dispose ();
恭喜你! 我们创建了一个简单的SWT Hello World程序。
什么是shell.pack()?
它告诉SWT应用程序自动将小部件(shell窗口)调整为首选大小,它始终仅使用所需的空间。 由于分辨率和平台渲染方面的差异,此功能很有用。
如果我们在上面的Hello World程序中注释掉shell.pack()。 输出如下所示