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

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

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

    沙漠中的魚

    欲上天堂,先下地獄
    posts - 0, comments - 56, trackbacks - 0, articles - 119
      BlogJava :: 首頁 ::  :: 聯系 :: 聚合  :: 管理

    RCP開發學習筆記

    Posted on 2009-11-25 15:57 沙漠中的魚 閱讀(421) 評論(0)  編輯  收藏 所屬分類: RCP開發

    Application.java 整個程序的入口點,在程序運行時,會選執行run方法,將創建用戶界面的工作交給ApplicationWorkbenchAdvisor類
    ApplicationWorkbenchAdvisor.java 指定默認的透視圖,把創建窗口的開作交給ApplicationWorkbenchWindowAdvisor類
    ApplicationWorkbenchWindowAdvisor.java,可能重載它的preWindowCreate,postWindowCreate,preWindowOpen,postWindowOpen等方法,以便修改窗口的外觀
    ApplicationActionBarAdvisor.java,可以創建菜單和工具條
    添加菜單
    添加菜單工具欄第一種方法
    makeActions創建action,注冊action;regsiter(action)是用來把實例注冊到工作臺中,當工作臺銷毀的時候,action也可以被銷毀
    action需要實現IWorkbenchAction接口
    fillMenuBar建菜單,工具條,設置相對應的action;
    添加菜單工具欄第二種方法
    在plugin.xml中添加配置
    <extension
     id ="cn.blogjava.youxia.actionset"
     name ="我的菜單擴展"
     point ="org.eclipse.ui.actionSets">
            <actionSet
     description ="第一個擴展"
     id ="RCP_Start.actionSet1"
     label ="RCP_Start.actionSet1"
     visible ="true" >
     <action class ="cn.blogjava.youxia.actions.Action2"
      icon ="icons/alt_window_16.gif"
      id ="RCP_Start.action2"
      label ="第二個菜單項"
      menubarPath ="cn.blogjava.youxia.firstmenu/additions"
      style ="push"
      toolbarPath ="additions"
      tooltip ="第二個菜單項的按鈕" />
           </actionSet>
    </extension>
    Action2必須要實現實現org.eclipse.ui.IWorkbenchWindowActionDelegate接口,多定義了一個方法public void selectionChanged(IAction action, ISelection selection),這個方法是必須的,以便工作臺窗口在用戶選定哪一項資源的時候通知我們的Action類的實例。這個方法是必須的,以便工作臺窗口在用戶選定哪一項資源時通知我們的action類的實例

    添加視圖
    在File->New->Other->Designer->RCP->ViewPart->Next
    Perspective類:這是RCP應用的默認視圖,實現了IPerspectiveFactory接口,并且通過org.eclipse.ui.perspectives擴展ClassName屬性指定
    在Perspective類中createInitialLayout方法中添加如下代碼
    layout.addView( BrowserView.ID,
    IPageLayout.TOP,
    IPageLayout.RATIO_MAX,
    IPageLayout.ID_EDITOR_AREA );
    在plugin.xml中添加如下節點
    <extension point="org.eclipse.ui.views">
        <view
            class="helloworld_rcp.BrowView"
            id="BrowView"
            name="New ViewPart">
        </view>
    </extension>
    設置隱藏編輯面板
    layout.setEditorAreaVisible(false);

    Selection Service的整體架構
    注冊
    this.getSite().setSelectionProvider(viewer);
    viewer需要實現ISelectProvider接口
    監聽
    this.getSite().getPage().addSelectionListener(this);
    this.實現ISelectionListener接口

    主站蜘蛛池模板: 国产亚洲A∨片在线观看| 亚洲精品无码专区2| 亚洲欧洲日韩综合| 国产免费AV片在线观看| 亚洲一区二区三区日本久久九| 国产在线国偷精品免费看| 亚洲啪啪AV无码片| 久久精品免费观看国产| 久久精品夜色国产亚洲av| 日本免费一区二区三区| 亚洲女人初试黑人巨高清| 欧洲精品成人免费视频在线观看 | 亚洲美女一区二区三区| 一级毛片全部免费播放| 亚洲精品欧洲精品| 成年18网站免费视频网站| 亚洲国产综合AV在线观看| 亚洲av片一区二区三区| h视频在线免费观看| 亚洲天堂中文资源| 中文字幕无码不卡免费视频| 亚洲国产欧美日韩精品一区二区三区 | 四虎在线视频免费观看| 美女免费视频一区二区三区| 亚洲人成人无码网www国产| 精品四虎免费观看国产高清午夜 | 亚洲最大黄色网站| 成年人免费网站在线观看| 欧洲乱码伦视频免费国产| 亚洲Av永久无码精品三区在线 | 日韩亚洲人成在线综合日本| 国产又大又粗又长免费视频| 亚洲AV无码AV男人的天堂不卡| 国产精品亚洲美女久久久| 99精品国产成人a∨免费看| 亚洲中文字幕无码亚洲成A人片| 亚洲电影日韩精品| 1000部啪啪未满十八勿入免费| 亚洲AV永久无码精品网站在线观看| 亚洲线精品一区二区三区| 在线看片免费不卡人成视频|