<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    大夢想家

    5年開發工程師,2年實施經理,X年售前顧問,......
    數據加載中……

    西安java用戶群成立~_~

    西安java用戶群,感謝dudu,為我們開通團隊,所有西安java界的朋友都可以到這里報道或者mail我,我來做初步的管理,等人足夠多了,我會交出管理權!
    初步想建立一個類似GJUG的小社團,也豐富一下,我們西安程序員的業余生活。
    感謝大家支持。
    聯系方法:
    leeguannan@gmail.com
    leeguannan@msn.com

    posted @ 2007-05-23 15:58 阿南 閱讀(1288) | 評論 (18)編輯 收藏
    Eclipse3.3m7 VS Eclipse3.2.2

    Eclipse3.3m7 VS Eclipse3.2.2
    沒有深入研究過兩者的差別,只是昨天在更換平臺時發現的。差別主要存在與Application類上,兩者繼承或者實現的類不同,也就決定了其底層的不同。
    Eclipse3.3M7

     1import org.eclipse.equinox.app.IApplication;
     2import org.eclipse.equinox.app.IApplicationContext;
     3import org.eclipse.jface.wizard.WizardDialog;
     4import org.eclipse.swt.widgets.Display;
     5import org.eclipse.swt.widgets.Shell;
     6import org.eclipse.ui.IWorkbench;
     7import org.eclipse.ui.PlatformUI;
     8
     9import com.glnpu.glbom.ui.wizard.FirstTimeConfigWizard;
    10
    11/**
    12 * This class controls all aspects of the application's execution
    13 */

    14public class Application implements IApplication {
    15
    16    /* (non-Javadoc)
    17     * @see org.eclipse.equinox.app.IApplication#start(org.eclipse.equinox.app.IApplicationContext)
    18     */

    19    public Object start(IApplicationContext context) throws Exception {
    20        Display display = PlatformUI.createDisplay();
    21
    22        try {
    23            int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
    24            if (returnCode == PlatformUI.RETURN_RESTART)
    25                return IApplication.EXIT_RESTART;
    26            else
    27                return IApplication.EXIT_OK;
    28        }
     finally {
    29            display.dispose();
    30        }

    31        
    32    }

    33
    34
    35
    36    /* (non-Javadoc)
    37     * @see org.eclipse.equinox.app.IApplication#stop()
    38     */

    39    public void stop() {
    40        final IWorkbench workbench = PlatformUI.getWorkbench();
    41        if (workbench == null)
    42            return;
    43        final Display display = workbench.getDisplay();
    44        display.syncExec(new Runnable() {
    45            public void run() {
    46                if (!display.isDisposed())
    47                    workbench.close();
    48            }

    49        }
    );
    50    }

    51}

    52

    實現再org.eclipse.core.runtime.IPlatformRunnable;

    Eclipse3.2.2
     1import org.eclipse.core.runtime.IPlatformRunnable;
     2import org.eclipse.jface.wizard.WizardDialog;
     3import org.eclipse.swt.widgets.Display;
     4import org.eclipse.swt.widgets.Shell;
     5import org.eclipse.ui.PlatformUI;
     6
     7import com.bom.demo.ui.wizard.FirstTimeConfigWizard;
     8
     9/**
    10 * This class controls all aspects of the application's execution
    11 */

    12public class Application implements IPlatformRunnable {
    13
    14    /* (non-Javadoc)
    15     * @see org.eclipse.core.runtime.IPlatformRunnable#run(java.lang.Object)
    16     */

    17    public Object run(Object args) throws Exception {
    18        Display display = PlatformUI.createDisplay();
    19        
    20        try {
    21            int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());
    22            if (returnCode == PlatformUI.RETURN_RESTART) {
    23                return IPlatformRunnable.EXIT_RESTART;
    24            }

    25            return IPlatformRunnable.EXIT_OK;
    26        }
     finally {
    27            display.dispose();
    28        }

    29    }

    Eclipse3.2.2則實現自org.eclipse.core.runtime.IPlatformRunnable;
    看來是又做了一次小幅度的分離,而且給出了更加合理的方法命名。

    posted @ 2007-05-22 08:37 阿南 閱讀(2205) | 評論 (7)編輯 收藏
    介紹一個好站

    http://www.krugle.com/
    代碼搜索工具,使用大量AJAX,可以搜索各種代碼,還提供Eclipse插件。所有優秀程序員都應該收藏!

    posted @ 2007-05-20 10:42 阿南 閱讀(1160) | 評論 (0)編輯 收藏
    簡單應用Maven2

    Maven2對項目的管理確實可以說是無微不至的,而且給出了大量的硬性規定。強制要求項目的目錄結構,而且還強烈建議使用“測試驅動開發”的使用。比方說它生成的標準項目目錄中就自帶了test目錄,而且POM.XML文件就直接帶有Junit3.8的Jar引用了。
    暫時就先簡單介紹一下兩種Maven2自帶的標準項目的生成方法:

    mvn archetype:create -DgroupId=com.mycompany.ap -DartifactId=my-app

    生成目錄結構:
     

    my-app

    |-- pom.xml

    `-- src

    |-- main

        | `-- java

            | `-- com

                | `-- mycompany

                    | `-- app

                        | `-- App.java

    `-- test

        `-- java

            `-- com
    ....


    上面生成出來的一個標準的jar項目格式。

    mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp

    -DarchetypeArtifactId=maven-archetype-webapp

    my-webapp

    |-- pom.xml

    `-- src

    `-- main

    |-- webapp

    | |-- WEB-INF

    | | `-- web.xml

    | `--index.jsp

    `-- resources

    上面生成的是一個標準的 war 項目。

    在命令行運行上面的命令以后在到項目文件夾下運行 mvn eclipse:eclipse,就將這個項目生成了eclipse項目依賴的文件,這個項目就可以導入到eclipse中開發了。
    暫時就先介紹這么多,有時間,把我們的預研報告整理出來。

    posted @ 2007-05-18 13:54 阿南 閱讀(1108) | 評論 (2)編輯 收藏
    讀jlibrary代碼的部分疑問,希望有人解答~

    昨天在Bolg中貼出來一個很不錯的RCP項目http://jlibrary.sourceforge.net/。
    今天已經開始研讀他的代碼了~,由于第一次解除RCP項目,難免總是一頭霧水,碰到了不少問題。在此記錄下來,希望有高手挺身而出幫忙解決,也再次記錄疑問,以備后輩享用.

      
    1.如何使用Maven2如果完成對EclipseRCP項目的管理?

    2.此項目在JLibraryActionBarAdvisor中使用自己封裝的ActionFactory來產生Action,而ActionFactory產生的Action只是RetargetAction,而RetargetAction對應的Action僅僅只有一個簡單的ID。此時在ActionBar上面顯示的Action僅僅是顯示而是不能用的。到了View中再產生真實的可以用的Action,而這個真實的Action并沒有包括任何ID信息。疑問就是RetargetAction與真實的Action是如何聯系起來的?
        此問題已經解決,他們的意圖是在JLibraryActionBarAdvisor首先使用RetargetAction對Toolbar上的Action進行注冊,此時這些RetargetAction都還有對應的真實Action。當用戶切換視圖到對應的透視圖,并且選擇了某個Veiw時,View中的代碼開始真正的注冊真是的Acion,注冊完成真是的Action以后再使用

    1actionBars.setGlobalActionHandler(ActionFactory.IMPORT_ID, fImport);
    方法將虛擬的RetargetAction與真實的Action進行關聯。
        這樣做的好處,我認為是先使用RetargetAction進行了占位,顯示不能用,然后根據不同的選擇Site,在判斷這個Action是否可用。


    3.整個系統的權限是如何控制的?

    posted @ 2007-05-18 10:30 阿南 閱讀(1687) | 評論 (5)編輯 收藏
    發現一個優秀的開源RCP項目

    http://jlibrary.sourceforge.net/
    各種功能都齊全,把RCP發揮的林立極致~~最好的是它開源!
    哪個高手可以告訴我如何使用maven2來管理RCP的項目~

    posted @ 2007-05-17 17:44 阿南 閱讀(2630) | 評論 (4)編輯 收藏
    TreeView思維圖

    TreeView思維圖
     
    下載

    posted @ 2007-05-17 10:57 阿南 閱讀(1436) | 評論 (1)編輯 收藏
    RCP經典代碼集中營(整理添加中... ...)

    RCP 如何產生Eclipse一樣的流線型視圖窗口?
        在 WorkbenchWindowAdvisor 中的preWindowOpen()中設置

    1//
    2    PlatformUI.getPreferenceStore().setDefault(
    3          IWorkbenchPreferenceConstants.ENABLE_ANIMATIONS, true); 
    4//???
    5    PlatformUI.getPreferenceStore().setDefault(
    6          IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS,
    7          false); 
        在補充一個 在狀態欄顯示 內存監控和垃圾回收的哪個按鈕       
    1PlatformUI.getPreferenceStore().setDefault(
    2                IWorkbenchPreferenceConstants.SHOW_MEMORY_MONITOR, true);

    posted @ 2007-05-16 09:32 阿南 閱讀(809) | 評論 (1)編輯 收藏
    向XMIND 2007學習

        XMIND 2007(未注冊)運行以后,先彪出一個Wizard,向人們要錢~
        OK,我的東東第一次運行的時候也要一個Wizard,不要錢,要數據庫配置信息。
        首先了解一下Wizard基礎:

        圖是Eclips Help的,不用文字,一張圖就夠~說的很詳細。
        Wizard的顯示是需要Wizard Dialog的, Wizard Dialog顯示的是Wizard,Wizard(繼承自Wizard,實現自INewWizard)中則包含了N個Wizard Page.只要page的數量大于2,那么下面的back和next就可以用了,太簡單了~
        Wizard Page中的public void createControl(Composite parent)方法主要是Page中的控件;
        Wizard中的public boolean performFinish()方法是處理,點擊Finish以后的處理方法;
        在RCP啟動之前先啟動Wizard就是在Applicationpublic Object start(IApplicationContext context) throws Exception 方法中Display display = PlatformUI.createDisplay();之下,int returnCode = PlatformUI.createAndRunWorkbench(display, new ApplicationWorkbenchAdvisor());之上增加啟動Wizard的代碼:
    1WizardDialog wizardDialog = new WizardDialog(new Shell(), new FirstTimeConfigWizard());
    2        wizardDialog.open();


    哪個哥哥知道XMIND 2007的注冊里面,點擊關閉以后直接關閉RCP這個東東是怎么實現的?

    posted @ 2007-05-15 18:26 阿南 閱讀(955) | 評論 (2)編輯 收藏
    郁悶的Perspective

    下午正式開始RCP開發,于是乎輕車熟路的開始打基礎框架。
           
           1. 建RCP項目
           2. 復制Form的jar包
           3. 寫第一次使用時需要維護信息的Wizard和WizardPage
           4. 寫用戶登錄窗口
           5. 在ApplicationWorkbenchWindowAdvisor中增加最大化代碼,在ApplicationWorkbenchAdvisor中增加保存用戶配置的代碼

    1    public void postWindowOpen(){
    2        this.getWindowConfigurer().getWindow().getShell().setMaximized(true);
    3    }

     

    1    public void initialize(IWorkbenchConfigurer configurer) {
    2         configurer.setSaveAndRestore(true);
    3    }


           5. 寫Perspective們

           6. 寫View們
           7. 給Perspective們分配View們
        run一下看看~暈,什么都不出來~Why!

        尋了一大圈才發現問題出在第五步給ApplicationWorkbenchAdvisor中增加保存用戶配置的代碼上~注釋掉configurer.setSaveAndRestore(true);就一切正常了。

        非常之不解,難道是我再給Perspective們分配View們之前已經run過了,所以記錄了我的布局方式了?不至于這么白癡吧~
    希望知道的大哥給解釋一下~

    posted @ 2007-05-15 18:11 阿南 閱讀(913) | 評論 (0)編輯 收藏
    僅列出標題
    共13頁: First 上一頁 5 6 7 8 9 10 11 12 13 下一頁 
    主站蜘蛛池模板: 日本三级2019在线观看免费| 免费a在线观看播放| 亚洲精品一二三区| 又粗又硬免费毛片| 国产一精品一av一免费爽爽| 亚洲乱码在线播放| 四虎影永久在线高清免费| 97在线免费视频| 亚洲中文字幕无码久久2020| 亚洲一级片免费看| 114一级毛片免费| 日亚毛片免费乱码不卡一区| 亚洲精品欧洲精品| 亚洲麻豆精品国偷自产在线91| 久久精品无码专区免费东京热| 老司机福利在线免费观看| 久久精品国产亚洲av日韩| 国产jizzjizz免费看jizz| 99久9在线|免费| 一级特级aaaa毛片免费观看| 亚洲国产精品综合福利专区| 亚洲午夜福利精品无码| 曰批全过程免费视频网址| 一级特黄特色的免费大片视频| 99久久婷婷国产综合亚洲| 亚洲熟妇无码乱子AV电影| 日韩精品免费电影| 1000部夫妻午夜免费| www一区二区www免费| 亚洲精品国产综合久久久久紧| 亚洲av激情无码专区在线播放 | 8x成人永久免费视频| 无遮挡呻吟娇喘视频免费播放| 亚洲人成片在线观看| 亚洲国产精品久久| 国产亚洲精品精品国产亚洲综合| 免费看片A级毛片免费看| 亚洲毛片免费观看| 久久aⅴ免费观看| 中国人免费观看高清在线观看二区 | 久久天天躁狠狠躁夜夜免费观看|