org.eclipse.swt.win32.win32.x86_3.2.0.v3232m.jar (位於 eclipse/plugins/)swt.dll、swt-win32-3232.dll 等至任意目錄 (如 E:\swt)SWT_LIB → File: 選擇 SWT JARSWT_LIB 出現在 Libraries 列表SWT 呼叫作業系統原生圖形庫,需指定 java.library.path:
-Djava.library.path=E:\swt (對應解壓目錄)import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.SWT;
public class HelloSWT {
public static void main(String[] args) {
Display display = new Display(); // 管理事件迴路、原生資源
Shell shell = new Shell(display); // 主視窗
shell.setText("SWT 範例");
shell.setSize(300, 200);
Label label = new Label(shell, SWT.CENTER);
label.setText("Hello, SWT!");
label.setBounds(50, 70, 200, 30); // 絕對座標佈局
shell.open(); // 顯示視窗
while (!shell.isDisposed()) { // 事件迴路
if (!display.readAndDispatch())
display.sleep();
}
display.dispose(); // 釋放原生資源
}
}
| 類別 | 角色 | 關鍵方法 |
|---|---|---|
| Display | 連接平台 GUI 子系統,管理事件佇列、色彩、字體、計時器 | readAndDispatch(), sleep(), dispose() |
| Shell | 頂層視窗容器,支援標題列、選單、最小化/最大化/關閉 | open(), setSize(), isDisposed() |
| Label | 文字/圖示顯示控制項 | setText(), setBounds() |