" /> 日本动漫理论片在线观看网站,国v精品久久久网,一区二区三区日韩精品视频

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

開發(fā)基于Java的圖形用戶界面

SWT(Standard Widget Toolkit)是IBM推出的“基于Java”的圖形界面開發(fā)庫,我之所以說它是“基于Java”的意思是程序員編寫代碼的時候是使用Java語言,事實(shí)上SWT的底層實(shí)現(xiàn)是C語言完成的。但是這些對程序員是透明的。

  我們使用SWT開發(fā)GUI程序的時候,直接用SWT API來寫。事實(shí)上很多Java的代碼是通過JNI去掉用C代碼來實(shí)現(xiàn)的。針對不同的平臺每個類有不同的實(shí)現(xiàn)方式,這篇文章的目的不在于講述SWT的設(shè)計原理,如果你對這些感興趣的話可以參考http://www.eclipse.org/articles/Article-SWT-Design-1/SWT-Design-1.html。

  下面開始介紹如何使用SWT,首先我假設(shè)你已經(jīng)安裝了Eclipse3.0,當(dāng)然其他的版本也可以,如果還沒有的話從www.eclipse.org上去下載。

  運(yùn)行Eclipse,切換到Java透視圖下面,從Package explore里面新建一個Java project。名稱為Test。

  在Libraries里面選擇Add external JARs來添加運(yùn)行SWT所需要的類庫,這個和系統(tǒng)相關(guān)的,比如我在windows xp下,地址為:D:eclipsepluginsorg.eclipse.swt.win32_3.0.0wswin32swt.jar。把它添加進(jìn)來,建議做一個variables指向這個swt.jar文件,以后直接添加variables就可以了。

  編寫Java代碼,例如

  import org.eclipse.swt.widgets.*;
  import org.eclipse.swt.*;
  public class SWTHello {
  public static void main(String[] args) {
  Display display = new Display();
  Shell shell = new Shell(display);
  Label label = new Label(shell, SWT.NONE);
  label.setText("Hello, World!");
  shell.pack();
  label.pack();
  shell.open();
  while(!shell.isDisposed())
   if(!display.readAndDispatch())
    display.sleep();
    display.dispose();
    label.dispose();
  }
  }

  配置運(yùn)行環(huán)境,由于SWT程序運(yùn)行的時候要用到本機(jī)資源,如果你現(xiàn)在運(yùn)行上面的程序的時候會出現(xiàn)錯誤,類似于Java.lang.UnsatisfiedLinkError: no swt-win32-2133 in Java.library.path”,因此你必須指定所需的DLL的位置,具體做法是:從菜單run->run切換到運(yùn)行配置界面,選擇Arguments在VM Arguments里面寫入-DJava.library.path=例如在我的機(jī)器上DLL的地址為D:eclipsepluginsorg.eclipse.swt.win32_3.0.0oswin32†。這樣每次運(yùn)行都要配置顯得有點(diǎn)麻煩,所以建議你在環(huán)境變量PATH里面添加這個包括DLL的路徑。

  運(yùn)行程序,你會看到你的第一程序的效果 :) 我的感覺是挺不錯的,速度要比Swing/AWT快。

  關(guān)于如何使用SWT,請參考www.eclipse.org上面的相關(guān)文章,多看看AWT API,多寫一些代碼!

jsp技術(shù)開發(fā)基于Java的圖形用戶界面,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 浦城县| 临安市| 新余市| 平乐县| 铜梁县| 罗定市| 曲麻莱县| 乌苏市| 达尔| 松阳县| 黑水县| 瓦房店市| 沅江市| 延寿县| 吉安县| 那坡县| 财经| 兴和县| 高密市| 集贤县| 吴江市| 台南市| 家居| 兴文县| 宣恩县| 兴城市| 措美县| 上林县| 康平县| 老河口市| 蚌埠市| 大渡口区| 马公市| 奉新县| 莲花县| 衡南县| 庄河市| 溧阳市| 碌曲县| 仁化县| 额济纳旗|