nighty

          折騰的年華
          posts - 37, comments - 143, trackbacks - 0, articles - 0

          添加完整的Eclipse RCP幫助系統(tǒng)

          Posted on 2007-10-25 10:30 寒武紀(jì) 閱讀(8950) 評(píng)論(3)  編輯  收藏 所屬分類: Eclipse
              開(kāi)發(fā)基于Eclipse開(kāi)的RCP軟件可以直接加入Eclipse的幫助系統(tǒng),使您的產(chǎn)品更加完善。Eclipse幫助系統(tǒng)提供的良好組織模式以及基于lucene的全文搜索功能。在Eclipse的網(wǎng)站上有一篇文章專門介紹如何為Mail示例RCP添加幫助系統(tǒng)的,但是寫(xiě)的不完全,按照里面的說(shuō)明添加后無(wú)法正常地顯示幫助框架。網(wǎng)上有少部分文章也提及這個(gè)主題,但是都沒(méi)有說(shuō)明白。
              經(jīng)過(guò)一翻摸索,最后終于折騰出來(lái),在這里記錄下面,與大家分享。如果你做過(guò)RCP產(chǎn)品,下面這些內(nèi)容應(yīng)該很熟悉。
              1. 添加幫助的菜單。
                 在ApplicationActionBarAdvisor類中加入幫助菜單項(xiàng)。代碼片斷如下:
                
          //幫助
              private IWorkbenchAction helpAction;

              
          /**
               * 創(chuàng)建操作
               
          */
              
          protected void makeActions(IWorkbenchWindow window) {
                  ....
           
                  
          /* 幫助 */
                  .....
                  helpAction 
          = ActionFactory.HELP_CONTENTS.create(window);
                  register(helpAction);
                  .....

               }

              
          /**
               * 填充主菜單
               
          */
              
          protected void fillMenuBar(IMenuManager menuBar) {
                  
          /* 主菜單欄 */
                  IMenuManager mainMenu 
          = getActionBarConfigurer().getMenuManager();
                  
                  MenuManager helpMenu 
          = new MenuManager("幫助(&H)", IWorkbenchActionConstants.M_HELP);
                  helpMenu.add(introAction);
                  helpMenu.add(helpAction);
                  ....
                  
                  
                  mainMenu.add(helpMenu);
              }
             2.  添加相關(guān)的依賴項(xiàng)。
                 打開(kāi)plugin.xml,轉(zhuǎn)到"依賴項(xiàng)"的tab頁(yè),點(diǎn)擊"添加"按鈕,需要加入下面的這些依賴項(xiàng):
          1. org.apache.lucene
          2.
          org.eclipse.help.appserver
          3.
          org.eclipse.help.base
          4.
          org.eclipse.help.ui
          5.
          org.eclipse.help.webapp
          6.
          org.eclipse.tomcat
          7.org.eclipse.ui.forms
             
              3. 添加org.eclipse.help.toc擴(kuò)展點(diǎn)
                 這個(gè)非常容易,轉(zhuǎn)到"擴(kuò)展"tab頁(yè),點(diǎn)擊“添加”按鈕。網(wǎng)上或是相關(guān)的書(shū)籍有很多關(guān)于添加help內(nèi)容的介紹,為了節(jié)省篇幅,這里直接添加一個(gè)擴(kuò)展向?qū)?lái)完成。選擇"擴(kuò)展向?qū)?-->"幫助內(nèi)容",確定后可以看到“所有擴(kuò)展”的列表中多了一個(gè)org.eclipse.help.toc擴(kuò)展,這里可能需要修改一下,生成的toc.xml和testToc.xml里面的label屬性標(biāo)簽不能是亂碼,不然幫助框架會(huì)讀不出,到時(shí)候顯示不出幫助的組織結(jié)構(gòu)。
                 結(jié)構(gòu)如下:
                
          <extension
                   
          point="org.eclipse.help.toc">
                
          <toc file="toc.xml"/>
                
          <toc
                      
          file="testToc.xml"
                      primary
          ="true"/>
             
          </extension>
             
              4. 部署產(chǎn)品配置
                 為您的RCP添加一個(gè)產(chǎn)品配置,打開(kāi)產(chǎn)品配置編輯器(xxx.product),轉(zhuǎn)到"配置"tab頁(yè),點(diǎn)擊“添加”,加入你的插件,然后點(diǎn)擊“添加必需的插件”,這樣在“插件和段”列表會(huì)看到你的插件以及你的RCP要完整啟動(dòng)的所有必需相關(guān)插件。在這里你應(yīng)該看到你在plugin.xml中依賴的那七個(gè)help相關(guān)的插件,以及一些以nl1結(jié)尾的插件,這些是語(yǔ)言插件。保存,轉(zhuǎn)到“概述”tab頁(yè),點(diǎn)擊"啟動(dòng)產(chǎn)品"。然后打開(kāi)“幫助--> 幫助內(nèi)容”,就可能看到你的幫助系統(tǒng)了。
              到此一個(gè)完整的幫助系統(tǒng)就完成了。下面是一個(gè)截圖:
             



          剛進(jìn)場(chǎng)的時(shí)候戲就落幕

          Feedback

          # re: 添加完整的Eclipse RCP幫助系統(tǒng)[未登錄](méi)  回復(fù)  更多評(píng)論   

          2010-03-09 14:53 by jane
          您好,
          為什么打包完成之后,幫助就出錯(cuò)呢?總是說(shuō)連接不到服務(wù)器~~~~如何解決呢?

          # re: 添加完整的Eclipse RCP幫助系統(tǒng)  回復(fù)  更多評(píng)論   

          2011-01-10 18:14 by 阿達(dá)克
          我要添加幫助

          # re: 添加完整的Eclipse RCP幫助系統(tǒng)  回復(fù)  更多評(píng)論   

          2013-04-24 14:12 by 趙一凡
          有沒(méi)有源代碼呀? 發(fā)我一份 謝謝 huozhe_2012@hotmail.com
          主站蜘蛛池模板: 和平县| 太白县| 抚顺县| 邵阳市| 神农架林区| 洛阳市| 玛多县| 阜平县| 墨脱县| 岳普湖县| 淄博市| 电白县| 神木县| 固原市| 雷波县| 宜州市| 连城县| 抚远县| 新河县| 孟村| 苍梧县| 新干县| 石楼县| 广元市| 卢湾区| 屏东县| 峨眉山市| 南京市| 恩施市| 呼图壁县| 贺州市| 巨鹿县| 罗山县| 犍为县| 巴林右旗| 樟树市| 桃源县| 博爱县| 鹤峰县| 龙山县| 吉首市|