SWT概述
SWT技術是一套基于Java的第三方圖形工具庫。它的設計思想是提供一套通用的API,使得開發出的圖形程序不僅可以不加修改地在平臺間移植,而且外觀上和速度上與使用C/C++等語言在操作系統平臺上開發出來的本地圖形程序毫無差別,還可以使用鼠標拖放操作、系統托盤等高級的系統服務。
SWT與AWT/Swing源自兩種完全不同的設計思想,二者各有所長。
Swing是Sun公司設計的一套圖形工具箱,它的目標是打造一套跨平臺的圖形界面開發工具。從最早的AWT到后來的Swing,Sun一直堅持著“界面跨平臺”的理念,圖形界面無論在那一個平臺下面運行,風格都要保持不變。用戶可以通過在Swing提供的顯示風格中選擇喜歡類型而設置程序的風格。
這種設計的初衷是從用戶的角度出發,但隨之而來的問題就是Swing不能直接用操作系統提供的圖形顯示功能而只能“模擬”它們,即Swing必須自己“畫“出和目標操作平臺的風格相似的界面。
Swing采用了模型和顯示分離的方法。控件本身并不包含任何和繪圖相關的代碼,而是將繪圖代碼分離到另外的類–UI類中。UI類的結構和Swing控件的類型結構是一一對應的。
下面我們來編寫第一個SWT示例,SWT相關包的下載地址為:http://www.eclipse.org/swt/
package com.gujin.swt;import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Label; import org.eclipse.swt.widgets.Shell;public class HelloSWT {public static void main(String[] args){Display display = Display.getDefault();Shell shell = new Shell(display);Label hello = new Label(shell, SWT.NONE);hello.setBounds(10, 10, 100, 30);hello.setText("Hello SWT");shell.open();shell.pack();while (!shell.isDisposed()){if (!display.readAndDispatch()){display.sleep();}}display.dispose();} }運行結果:
總結
- 上一篇: ose的网络linux,Ubuntu8.
- 下一篇: 【JAVA】通过ISBN一键获取书籍信息