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

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

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

    嘰哩咕嚕

    君子如玉,上善若水

    RCP入門程序的要點(diǎn).

    關(guān)于RCP程序開發(fā),當(dāng)寫第一個(gè)Demo時(shí)的要點(diǎn).記錄下來.寫得粗糙,僅供自己參考
    1.    Action
        1> ApplicationActionBarAdvisor類的makeActions方法用來初始化Action,可以是內(nèi)部定義的Action,也可以是自己從Action類繼承的自定義Action.
        2>從Action類繼承的Action重寫run方法,這是Action執(zhí)行時(shí)候運(yùn)行的代碼.
        3>內(nèi)置Action 都實(shí)現(xiàn)了IWorkbenchAction,用ActionFactory.QUIT.create獲得Action.
        3>相比Delphi,JFace的Action類更簡(jiǎn)單,把他放在menubarManager上,他就變成了一個(gè)菜單,把他放在 ToolbarManager上就變成了工具圖標(biāo).delphi里面一個(gè)菜單是一個(gè)menuItem + Action組成的.工具欄是Button + Action組成的.

    2.    菜單:
        1>menubarManager 相當(dāng)于有主菜單,如文件,編輯等菜單項(xiàng).menubarManger.add(menubarManager).這樣產(chǎn)生二級(jí)菜單.
        2>menubarManager.add(Action).這樣就添加了一個(gè)子菜單.
        3>fillMenuBar(IMenuManager menuBar) 方法傳進(jìn)來的menuBar就是最頂端的菜單面板.相當(dāng)于delphi里面添加了一個(gè)XPMenu控件,會(huì)在form上增加一條菜單面板.menuBar.add(menubarManager),這樣添加了一級(jí)菜單.

    3.    工具欄

        1>重寫fillCoolBar(ICoolBarManager coolBar) 可以添加工具欄.
        2>創(chuàng)建一個(gè)ToolbarManager實(shí)例.就是一個(gè)工具欄.可以創(chuàng)建多個(gè).
        3>ToolbarManager.add(Action).這樣就是添加了一個(gè)工具圖標(biāo).
        4>coolBar.add(ToolbarManager),就是在界面上添加一塊工具欄,可以增加多塊工具欄.
    4.View社圖
        1>可以從擴(kuò)展點(diǎn)配置一個(gè)Action: 從plugin.xml的Extension標(biāo)簽,點(diǎn)add,找出views
        2>也可以從ViewPart繼承一個(gè)類.createPartControl方法設(shè)置一些初始化工作.
        3>View可以理解為Delphi的childwindow,子窗口,可以放各種控件,可以關(guān)閉,最大化,最小化.
        4>View的顯示是依賴一個(gè)透視圖的.透視圖可以理解為不同的View或Editor的組合,就叫透視圖.
        5>重寫Perspective默認(rèn)透視圖createInitialLayout方法,并用layout.addView添加并顯示一個(gè)視圖.當(dāng)加載默認(rèn)視圖時(shí)會(huì)加載該View窗口.

    5.Editor編輯器
        1>Editor類實(shí)現(xiàn)了ISaveablePart接口.并綁定了內(nèi)置的Save Action,SaveAsAction
        2>當(dāng)點(diǎn)擊菜單中的保存 Action時(shí)會(huì)自動(dòng)調(diào)用doSave方法.只要重寫doSave方法保存當(dāng)前的文件即可實(shí)現(xiàn)保存.
        3>Editor依賴了一個(gè)EditorInput類,EditorInput類我理解為像Struts中的ActionForm類一樣,用來傳遞參數(shù)給Editor.
        4>如果不是需求這種集成編輯器的功能,一般用View可以滿足,但是如像QQ聊天這樣的編輯框的時(shí)候,用Editor開發(fā)應(yīng)該是一個(gè)不錯(cuò)的選擇.delphi里面像發(fā)送消息程序,采用了一個(gè)HtmlEdit控件才解決了這個(gè)問題.
        5>Editor窗口可以用window.getActivePage.openEditor(input, TxtEditor.ID)打開.

    posted on 2011-08-24 12:09 嘰哩咕嚕 閱讀(734) 評(píng)論(0)  編輯  收藏 所屬分類: 個(gè)人總結(jié)

    公告

    瘋狂

    導(dǎo)航

    <2011年8月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    統(tǒng)計(jì)

    常用鏈接

    留言簿

    隨筆分類(17)

    隨筆檔案(22)

    文章分類(1)

    文章檔案(1)

    工程教程

    牛人BLOG

    搜索

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 99久久国产精品免费一区二区 | 亚洲欧洲校园自拍都市| 一个人免费观看www视频| 亚洲AV无码专区在线观看成人| 免费H网站在线观看的| 又粗又硬又黄又爽的免费视频 | 最近中文字幕mv免费高清视频7 | 久久亚洲精品无码观看不卡| 一级毛片a免费播放王色电影| 亚洲av手机在线观看| 美女裸体无遮挡免费视频网站| 无码AV片在线观看免费| 亚洲三级电影网站| 18禁美女黄网站色大片免费观看| 日木av无码专区亚洲av毛片| 无人在线直播免费观看| 亚洲免费网站观看视频| 亚洲?V无码成人精品区日韩| 中文字幕在线免费视频| 亚洲人成亚洲精品| 国产福利在线免费| 青青免费在线视频| 国产亚洲人成网站在线观看不卡| 95免费观看体验区视频| 亚洲AV无码无限在线观看不卡| 国产色婷婷精品免费视频| jizz免费在线影视观看网站| 国产V亚洲V天堂A无码| 高h视频在线免费观看| 亚洲性猛交XXXX| a毛片基地免费全部视频| 国产成人不卡亚洲精品91| 亚洲男人的天堂在线va拉文| 最近中文字幕mv免费高清视频8 | 成人a毛片视频免费看| 亚洲AV日韩精品久久久久久| 午夜宅男在线永久免费观看网| 日本精品久久久久久久久免费| 亚洲一区二区电影| 免费jjzz在线播放国产| 88av免费观看入口在线|