SWT/Jface Step by Step(一)

          ??????????????????????????????????????????????????? SWT/Jface Step by Step(一)
          ????????????????????????????????????????????????????? Original Author:? 李紅軍 <lihongjun007@gmail.com>

          重點介紹 SWT/JFACE 編程 , 主要介紹在 eclipse 下用 Windowbuilder 來開發(fā) SWT/JFACE, 在這一篇中重點介紹幾個 eclipse 下常用的 GUI 插件 , 然后以一個 hello world 為例 , 在本文的后續(xù)文章中將會陸續(xù)給出更為詳細的介紹。


          ????????????? 本文中如果發(fā)現(xiàn)問題和錯誤,請隨時聯(lián)系筆者,以免誤導他人。
          ?????????????? 本文轉載不限,不過請保持本文完整。萬分感謝!

          2006/07/08

          Plugins? for? GUI? Introduction

          ?

          l?????? SWT Designer : 可以從: http://eclipse.openwebeng.com/downloads/drops/R-3.1-200506271435/swt-3.1-win32-win32-x86.zip 中下載到所需要的插件

          l?????? Matisse GUI Builder :適合于 NetBeans 下,不過在 eclipse?中 也可以使用。
          Matisse For MyEclipse - 基于MyEclipse的Swing的可視化編輯器。

          MyEclipse開發(fā)了一個開發(fā)swing程序的插件。

          了解詳情請訪問:?http://myeclipseide.com/enterpriseworkbench/help/index.jsp?topic=/com.genuitec.eclipse.dehory.doc/doc/install/index.html

          ?
          NetBeans 開發(fā)小組近日宣布,推出 NetBeans 5.0 新更新內(nèi)容, Matisse GUI Builder 。

          此次更新的功能都將可以用在 NetBeans 6.0 開發(fā)環(huán)境中。 ?

          此次發(fā)布的新功能主要包括:

          1. Automatic Internationalization
          2. Visual Localization
          3. Preview with Look and Feel
          4. Relative Font Definition
          5. Context Sensitive Help Bar
          6. Reorganized Palette
          ?????????? ?????????7. Dragging Components from Projects Explorer
          8. Support for Java 6 Layout
          9. Bugfixes

          可以從: http://form.netbeans.org/JavaOne/ 獲得下載更新。

          ?

          l?????? Windowbuilder WindowBuilder Pro v v5.0.0 這是目前最新的版本,支持 Eclipse 3.1 Eclipse 3.2 ,此軟件就是開發(fā) Swt-Designer Swing-Designer 公司的最新產(chǎn)品,它就是這兩種軟件的一個結合體(包含 Swt-Designer Swing-Designer 最新專業(yè)版的所有功能),值得推薦?。?!

          我用的是 4.1.1
          注冊版截圖 [ 圖一 ][ 注意,注冊版的運行界面右上方?jīng)]有提示激活和購買的選項:
          未命名.JPG

          ??????????????? 圖一

          下載地址: http://www.instantiations.com/swt-designer/

          大家可以根據(jù)自己的需要選擇對應的版本

          破解補丁下載地址 [ 注意對應相應的版本 ]

          WindowBuilder Pro For Eclipse 3.1 And 3.2 v4.1.1 注冊機 Keygen

          http://soft.winzheng.com/SoftView/SoftView_28473.htm

          基本上能總結的就是這么多了,如果大家還有什么問題,歡迎跟大家一起交流,以上過程在 Windows XP + J2SDK 1.5 + Eclipse 3.1.2 下調試成功。

          eclipse windowsBuilder 的安裝破解 :

          1.?????? windowBuilder( http://www.instantiations.com/swt-designer) 下載與你的 eclipse 所對應的版本

          2. 下載破解文件注冊 : http://soft.winzheng.com/SoftView/SoftView_28473.htm

          eclipse 安裝目錄下建立 links 文件夾,將 windowBuilder.start 放在此文件夾下,文件內(nèi)容為插件的存放位置,插件可放在任意位置 . agiwp411km.exe 生成注冊碼注冊

          . 打開 eclipse >Window >Designer, 點擊 Registration and Activation ,選擇 WindowBuilder , Professional 。 next ,填寫資料,注意 Name 中名和姓要分開寫,如 hongjun li next ,填入序列號和激活碼。 finished

          NOTE: ??? 我假定你在讀這篇文章的時候已經(jīng)對Eclipse有所了解,所以不會解釋到具體Eclipse如何使用。

          ????????

          Contact me

          如果你希望和我聯(lián)系的話,你可以發(fā) email lihongjun007@gmail.com 。

          我的 blog http://www.aygfsteel.com/hongjunli/

          Important

          如果你不知道什么是 eclipse ?你可以打開 http://www.eclipse.org/ ,這是 eclipse 的官方站點。

          你不知道什么是 Swt/JFace, 你可以讀一下《 eclipse in action 》這本書。

          ?

          A Simple Demo!

          ?

          下面的內(nèi)容就是我們的 Demo 示例。首先建立一個類,我將這個類取名為 MyFrame ,在我的 SWT 工程中,它位于 net.itpub.hongjunli 包的下面。類的內(nèi)容如下:

          package net.itpub.hongjunli;

          import org.eclipse.swt.SWT;

          import org.eclipse.swt.events.SelectionAdapter;

          import org.eclipse.swt.events.SelectionEvent;

          import org.eclipse.swt.widgets.Button;

          import org.eclipse.swt.widgets.Display;

          import org.eclipse.swt.widgets.Shell;

          import org.eclipse.swt.widgets.Text;

          ?

          public class MyFrame {

          ?

          ??? /**

          ??? ?* Launch the application

          ??? ?* @param args

          ??? ?*/

          ??? public static void main(String[] args) {

          ???????????? // 獲得 display 類型的對象

          ???????????? final Display display = Display.getDefault();

          ???????????? // 構造程序的主窗口

          ???????????? final Shell shell = new Shell();

          ???????????? // 設置主窗口的大小

          ???????????? shell.setSize(426, 245);

          ???????????? // 設置主窗口的標題,顯示 Hello, Hongjun

          ???????????? shell.setText("Hello, Hongjun ");

          ???????????? // 打開豬窗口

          ???????????? shell.open();

          ???????? // 設置文本框的文字、字體以及大小

          ???????????? final Text thisIsMyText = new Text(shell, SWT.BORDER);

          ???????????? thisIsMyText.setText("This is my first designer");

          ???????????? thisIsMyText.setBounds(67, 35, 170, 27);

          ??????? // 設置按鈕的標簽文字、大小及位置

          ???????????? final Button button = new Button(shell, SWT.NONE);

          ???????????? button.addSelectionListener(new SelectionAdapter() {

          ?????????????????????? public void widgetSelected(SelectionEvent e) {

          ?????????????????????? }

          ???????????? });

          ???????????? button.setText("Begin");

          ???????????? button.setBounds(32, 103, 71, 37);

          ???????????? button.addSelectionListener(new SelectionAdapter() {

          ?????????????????????? // 如果單擊按鈕事件發(fā)生之后

          ?????????????????????? public void widgetSelected(SelectionEvent e) {

          ?????????????????????? // 改變文本框中顯示的文本信息

          ??????????????????????????????? thisIsMyText.setText(" 你單擊了 Begin 按鈕 ");

          ???????????????????????????????

          ?????????????????????? }

          ???????????????????????????????????????? });

          ???????????? final Button button_1 = new Button(shell, SWT.NONE);

          ???????????? button_1.addSelectionListener(new SelectionAdapter() {

          ?????????????????????? // 如果單擊按鈕事件發(fā)生之后

          ?????????????????????? public void widgetSelected(SelectionEvent e) {

          ?????????????????????? // 改變文本框中顯示的文本信息

          ??????????????????????????????? thisIsMyText.setText(" 你單擊了 End 按鈕 ");

          ???????????????????????????????

          ?????????????????????? }

          ??????????????????????

          ??????????????????????

          ???????????? });

          ???????????? button_1.setText("End");

          ???????????? button_1.setBounds(190, 97, 75, 43);

          ???????????? // 設置主窗口的布局

          ???????????? shell.layout();

          ???????????? //if display 不運行,則讓 display 休眠

          ???????????? while (!shell.isDisposed()) {

          ?????????????????????? if (!display.readAndDispatch())

          ??????????????????????????????? display.sleep();

          ???????????? }

          ??? }

          }

          代碼段 1

          關于這段代碼的內(nèi)容,我們會在下面的內(nèi)容中進行詳細介紹。現(xiàn)在我們可以嘗試著運行一下,確定已經(jīng)編譯完成后從 eclipse Package Explorer 中選中這個類然后點右鍵,在彈出的菜單中你會看到 Run As ,進一步選中這一項,然后在級聯(lián)菜單中選 “Run As SWT Application” ,如果運行正常的話你會看到如圖 2 的運行結果:

          hello.jpg

          ??????????? 圖二

          ? ????????????????????????????????????????CONTINUE

          posted on 2006-07-08 08:27 XiaoLi 閱讀(3527) 評論(1)  編輯  收藏

          評論

          # re: SWT/Jface Step by Step(一) 2006-07-09 17:23 xy

          rcp developer 怎么破解啊
            回復  更多評論   


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           

          公告


          文章發(fā)布許可

          本站作品均采用知識共享署名-非
          商業(yè)性使用-禁止演繹 2.5 中國大
          陸許可協(xié)議
          進行許可。

          Books I've Translated

          《精通Nginx(第二版)》

          精通Nginx(第二版)
          《云計算:原理與范式》

           云計算:原理與范式

          《SQL技術手冊(第三版)》
          SQL技術手冊(第三版)
          《MySQL核心技術手冊(第二版)》
          MySQL核心技術手冊(第2版)
          《RESTful Web Services中文版》
          RESTful Web Services中文版

          導航

          留言簿(2)

          隨筆分類

          搜索

          最新評論

          主站蜘蛛池模板: 嫩江县| 策勒县| 抚松县| 赤城县| 无锡市| 温宿县| 玛沁县| 宣武区| 西乌珠穆沁旗| 金寨县| 赤水市| 昔阳县| 台中市| 崇文区| 山阴县| 吐鲁番市| 阿合奇县| 龙州县| 新干县| 乌兰察布市| 巴中市| 博爱县| 磴口县| 彰武县| 康定县| 东丰县| 黄陵县| 锡林郭勒盟| 高清| 京山县| 关岭| 封丘县| 和硕县| 盘山县| 揭阳市| 都江堰市| 临夏县| 辽宁省| 大名县| 沁源县| 阿拉善盟|