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

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

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

    posts - 31,  comments - 31,  trackbacks - 0

    1、編制菜單:?
    ?????每個(gè)Plug-In可以包括一個(gè)MenuBar(菜單)、CoolBar(工具欄)、PerspectiveBar(面板欄)、FastViewBar(快速視圖欄),這些欄目是在Plug-In運(yùn)行過程中不會(huì)改變的,MenuBar(菜單)由ApplicationActionBarAdvisor類的fillMenuBar()方法定義,例:

    ????????????MenuManager fileMenu = new MenuManager("&File", IWorkbenchActionConstants.M_FILE);
    ????????????fileMenu.add(new?Separator());
    ????????fileMenu.add(newViewAction);

    CoolBar(工具欄)由ApplicationActionBarAdvisor類的fillCoolBar()方法定義,例:

    IToolBarManager toolbar = new ToolBarManager(SWT.FLAT | SWT.RIGHT);?
    toolbar.add(newViewAction);


    PerspectiveBar由PlugIn.xml文件中關(guān)于Perspective的配置自動(dòng)生成,F(xiàn)astViweBar由PlugIn.xml文件中關(guān)于View的配置自動(dòng)生成,MenuBar和CoolBar中各個(gè)功能按鈕的action在ApplicationActionBarAdvisor類的makeActions()方法中注冊(cè)。例:

    newViewAction? = ? new ?OpenNewViewAction(window,? " 打開新視圖菜單 " ,?IEntryID.NEW_VIEW_ID);
    ????????register(newViewAction);


    2、編寫面板和視圖:?
    ??????在Plug-In運(yùn)行過程中Perspective(面板),View(視圖)會(huì)被經(jīng)常切換,其中Perspective由若干個(gè)View組成,Perspective要實(shí)現(xiàn)IPerspectiveFactory接口,并在Perspective中定義要加載的View。View要繼承ViewPart類,View還要有一個(gè)唯一的ID。并把Perspective和View在PlugIn.xml作注冊(cè)。例:

    < extension??? point ="org.eclipse.ui.views" >
    < view
    ????????????
    name ="新打開的視圖"
    ????????????allowMultiple
    ="true"
    ????????????icon
    ="icons/sample3.gif"
    ????????????class
    ="uuu.NewView"
    ????????????id
    ="uuu.NewView" >
    ??????
    </ view >
    </ extension >
    ???
    < extension???? point ="org.eclipse.ui.perspectives" >
    ??????
    < perspective
    ????????????
    name ="New?Perspective"
    ????????????class
    ="uuu.NewPerspective"
    ????????????id
    ="uuu.NewPerspective" >
    ??????
    </ perspective >
    ???
    </ extension >

    3、添加action
    編寫一個(gè)繼承了Action的XXXaction類,再此之前先定義一個(gè)接口,如下:

    public ? interface ?IEntryID? {

    ????
    public ? static ? final ?String?NEW_VIEW_ID? = ? " uuu.NewView " ;
    ????
    public ? static ? final ?String?CMD_OPEN_NEW_VIEW? = ? " uuu.OpenNewView " ;????
    }

    實(shí)現(xiàn)XXXaction的構(gòu)造函數(shù),如下:

    this .window? = ?window;
    ????????
    this .viewId? = ?viewId;
    ????????setText(label);
    ????????
    // ?The?id?is?used?to?refer?to?the?action?in?a?menu?or?toolbar
    ????????setId(IEntryID.CMD_OPEN_NEW_VIEW);
    ????????
    // ?Associate?the?action?with?a?pre-defined?command,?to?allow?key?bindings.
    ????????setActionDefinitionId(ICommandIds.CMD_OPEN);
    ????????setImageDescriptor(uuu.Activator.getImageDescriptor(
    " /icons/sample2.gif " ));

    在PlugIn.xml中添加相應(yīng)的配置:

    < extension?????? point ="org.eclipse.ui.commands" >
    ????????
    < command
    ????????????
    name ="打開新視圖"
    ????????????description
    ="打開一個(gè)新的視圖"
    ????????????categoryId
    ="uuu.OpenNewView"
    ????????????id
    ="uuu.OpenNewView" >
    ??????
    </ command >
    ????
    </ extension? >

    4、顯示工具欄:
    在ApplicationWorkbenchWindowAdvisor類的preWindowOpen();方法中添加
    ?

    ?configurer.setShowCoolBar( true );
    ?configurer.setShowPerspectiveBar(
    true );
    ?configurer.setShowFastViewBars(
    true );
    posted on 2007-01-31 14:33 小平 閱讀(351) 評(píng)論(0)  編輯  收藏

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


    網(wǎng)站導(dǎo)航:
     
    <2007年1月>
    31123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

    常用鏈接

    留言簿(2)

    隨筆分類

    隨筆檔案

    framework

    j2me

    java

    linux

    web

    其他

    友情鏈接

    素材

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 一区二区三区免费视频观看| 免费一级毛片在线播放视频| 亚洲日韩国产一区二区三区| 国产免费网站看v片在线| 亚洲第一精品电影网| 国产zzjjzzjj视频全免费| 一个人看的www免费视频在线观看| 亚洲av无码一区二区三区观看| 又黄又大又爽免费视频| 91短视频在线免费观看| 国产亚洲综合视频| 亚洲免费在线视频观看| 国产亚洲美女精品久久久| 色婷婷7777免费视频在线观看| 国产激情久久久久影院老熟女免费 | 久久99国产乱子伦精品免费| 亚洲AV无码AV日韩AV网站| 图图资源网亚洲综合网站| 国产免费观看网站| 91老湿机福利免费体验| 羞羞视频免费网站日本| 亚洲冬月枫中文字幕在线看| 久久精品国产69国产精品亚洲| 狠狠久久永久免费观看| 久久精品一本到99热免费| 特级毛片免费观看视频| 国产成人精品日本亚洲网址| 国产亚洲精品无码成人| 免费大片黄手机在线观看| 全免费毛片在线播放| 国产情侣久久久久aⅴ免费 | 黄色免费网站在线看| 亚洲乱码日产精品BD在线观看| 亚洲国产日韩在线视频| 亚洲Av无码乱码在线观看性色| 一个人看的www在线观看免费| 久久青草91免费观看| h在线看免费视频网站男男| 狠狠入ady亚洲精品| 亚洲日本中文字幕天天更新| 亚洲成人精品久久|