亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

一個簡單的SWT程序實例及詳解

系統 1790 0

一個簡單的SWT程序實例及詳解

2006-07-05 07:00 作者: 出處: BLOG 責任編輯: 方舟

 讓我們從簡單的 HelloWorld 應用程序開始。

一、將SWT添加到工程的類路徑中

  首先建立一個 java 工程。在開始使用SWT之前,需要將SWT庫文件添加到工程的類路徑中。步驟如下:

  1. 下載SWT。在 Eclipse SDK的下載頁面中,提供了獨立版本的SWT下載。找到標有SWT Binary and Source 的欄目。下載適合你 操作系統 的版本,不用解壓,直接保存到 硬盤 中。

  2. 在Eclipse菜單欄,選擇File-〉Import...打開導入向導

  3. 選擇Existing Projects into Workspace ,點擊Next按鈕

  4. 選擇 Select archive file并使用 Browse...按鈕來找到你剛才下載的SWT文件。

  5. 點擊Finish按鈕,完成SWT導入。

  6. 右鍵點擊你建立的工程,選擇Properties 來打開Properties對話框。

  7. 選擇 Java Build Path tab并點擊Add按鈕. -> Projects

  8. 選擇 org.eclipse.swt工程, 點擊 OK,完成添加SWT庫到你的工程中(見圖1).

一個簡單的SWT程序實例及詳解
圖 1

二、 SWT 代碼

  現在在你建立的java工程中,新建一個java文件,取名為 HelloWorld。在HelloWorld.java文件中把main()方法覆蓋為以下代碼:

1 public static void main(String[] args) {
2 Display display = new Display();
3 Shell shell = new Shell(display);
4 shell.setText( " Hello World " );
5 shell.setBounds( 100 , 100 , 200 , 50 );
6 shell.setLayout( new FillLayout());
7 Label label = new Label(shell, SWT.CENTER);
8 label.setText( " Hello World " );
9 Color red = new Color(display, 255 , 0 , 0 );
10 label.setForeground(red);
11 shell.open();
12 while ( ! shell.isDisposed()) {
13 if ( ! display.readAndDispatch()) display.sleep();
14 }
15 red.dispose();
16 display.dispose();
17 }

  注:

  在覆蓋了上述代碼后, 選擇菜單欄中的 Source -> Organize Imports命令 (或者按Ctrl+Shift+O) 來把需要引用的SWT包導入到HelloWorld.java文件中 。

  以下是對各行代碼的詳細解釋:

  第2行:每個基于SWT的應用程序都有一個Display類的實例。用來將低層平臺和SWT進行鏈接。除了管理SWT的事件循環,還能訪問SWT需要的平臺資源。在16行,display實例將會提交給垃圾收集器。

  第3行:每一個窗口都有一個Shell窗口框架,來與用戶進行交互。Shell像所有的 windows 系統一樣來處理動作行為,并作為窗口控件的放置場所。

  第4行: setText()方法設置窗口的標題.

  第5行: setBounds() 方法設置窗口的大小和放置的位置. 在這個例子中, 設置窗口為200個像素寬,50個像素高,并放在離屏幕的左上角100x100像素的位置上。

  第6行: setLayout()方法 設置窗口框架的布局. FillLayout,充滿式布局管理器,使得組件大小會盡量的充滿整個容器.SWT的布局管理器會在以后詳細介紹。

  第7行:在shell上新建一個簡單的label組件并居中顯示label的文本內容。

  第8行: setText() 方法 設置label的文本內容。

  第9行:創建一個紅色的顏色類的實例。你也可以使用以下語句獲得系統紅色的實例:

  Color red = display.getSystemColor(SWT.COLOR_RED);

  第10行: setForeground() 方法 設置label的前景色

  第11行:到目前為止,窗口框架還是不可見的。通過open()方法使得窗口可見。

  第12行: while語句循環檢測窗口有沒有關閉。

  第13行:display 控制事件的循環. readAndDispatch() 方法從平臺的事件隊列中讀取事件,并分配他們到合適的處理程序(接收者)。只要隊列中一直有事件可以處理,這個方法一直返回true,當事件隊列為空時,則返回false(因此允許用戶界面UI線程出于sleep狀態直到事件隊列不為空)。

  第15,16行:當循環檢測到窗口被關閉時,需要將color,display和一些相關聯的平臺資源釋放。注意到系統顏色實例(colors)將會被提交釋放。

二、 運行這個例子

  通常情況下,為了啟動一個java應用程序,會使用Run As -〉 Java Application 命令。在這里,如此運行將會拋出 UnsatisfiedLinkError 異常,說明沒有找到 SWT 的本地庫。如果運行 Run As > SWT Application 命令,將會彈出 SWT 啟動配置窗口,見圖 2 ,在圖 2 中可以點擊 run 按鈕。

一個簡單的SWT程序實例及詳解
圖 2

  點擊 run ,運行結果圖 3 。


圖 3

一個簡單的SWT程序實例及詳解


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产精品九九九久久九九 | 夜夜操天天射 | 可以免费观看一级毛片黄a 可以直接看的毛片 | 香蕉久久ac一区二区三区 | 日韩欧美色综合 | 久久99精品久久久久久久不卡 | 亚洲一区二区视频在线观看 | 久久久久欧美激情 | 一级毛片在线视频 | 亚洲视频免费在线播放 | 日韩一区二区久久久久久 | 超级碰碰青草免费视频92 | 国产理论自拍 | 不卡一级毛片免费高清 | 国产精品视频免费观看 | 日日噜噜噜夜夜爽爽狠狠 | 亚洲第一成人在线 | 久久久久久穴 | 国产成人精品本亚洲 | 亚洲免费人成在线视频观看 | 婷婷综合久久狠狠色99h | 在线免费毛片 | 日本波多野结衣字幕久久 | 青青青青青青久久久免费观看 | 九热这里只有精品 | 久久亚洲精品永久网站 | 夜夜爽66| 国产亚洲精aa在线观看不卡 | 亚洲福利视频精选在线视频 | 国产精品久久久久久久久ktv | 一级黄色录像免费观看 | 亚洲精品久久一区影院 | 91精品久久一区二区三区 | 2019年国产不卡在线刷新 | 蜜桃综合网 | 日本伊人色综合网站 | 777色狠狠一区二区三区香蕉 | 一本到视频在线观看 | 亚洲精品国产成人99久久 | 色天使色婷婷在线影院亚洲 | 日韩欧美理论片 |