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

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

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

    xiaoxiaoleemin

    天道酬勤,小小加油
    posts - 19, comments - 12, trackbacks - 0, articles - 0

    如何顯示PropertySheet視圖

    Posted on 2007-05-06 17:24 xiaoxiaoleemin 閱讀(2075) 評論(2)  編輯  收藏 所屬分類: EMF
        前面的幾篇是讀了《EMF:A Developer's Guide》一書前三章的讀書筆記,我覺得這三章的內(nèi)容是最重要的,介紹了EMF Framework的一些設(shè)計、結(jié)構(gòu)以及實現(xiàn)的問題。但是這些只是一些原理性的東西,要熟練掌握EMF的方法是在項目中應(yīng)用它,我們可以從修改EMF生成的代碼入手。EMF生成的編輯器是MultiPageEditor,比較復(fù)雜,我們可以參考它自己寫一個普通的Editor,在這個過程中可以熟悉哪些代碼是用于實現(xiàn)哪些功能的。
        下面用一個簡單的例子來說明如何實現(xiàn)PropertySheet,這里只關(guān)心與PropertySheet有關(guān)的代碼:
    public class MySchoolEditor extends EditorPart implements ISelectionListener{
        ...
        PropertySheetPage propertySheetPage;

        public void init(IEditorSite site, IEditorInput input) throws PartInitException {
            ...
            propertySheetPage = getPropertySheetPage();
        }

        public PropertySheetPage getPropertySheetPage() {
            if (propertySheetPage == null) {
               propertySheetPage = new PropertySheetPage();
               propertySheetPage.setPropertySourceProvider(new
    AdapterFactoryContentProvider(adapterFactory));              
            }
            return propertySheetPage;
        }

        public Object getAdapter(Class key) {
         
             if (key.equals(IPropertySheetPage.class))
                 return getPropertySheetPage();        
             else
                return super.getAdapter(key);      
        }
    }
        創(chuàng)建PropertySheetPage之后,為它設(shè)置PropertySourceProvider,參數(shù)是一個AdapterFactoryContentProvider實例,在前面的帖子里邊說過,它實現(xiàn)了IPropertySourceProvider接口,其getPropertySource方法是這樣實現(xiàn)的:比如我們在編輯器里邊選中一個teacher對象,它先找到Teacher類對應(yīng)的實現(xiàn)了IItemPropertySource的TeacherItemProvider對象,然后以這兩個對象作為參數(shù)新建一個PropertySource。
        getAdapter方法繼承自WorkbenchPart類(EditorPart和ViewPart都是它的子類,都可以重寫這個方法),當(dāng)我們需要打開屬性頁視圖時,該方法會被調(diào)用,傳入的參數(shù)就是IPropertySheetPage.class,因此返回我們新建的PropertySheetPage,屬性頁就出現(xiàn)了。

    Feedback

    # re: 如何顯示PropertySheet視圖  回復(fù)  更多評論   

    2007-05-06 17:34 by xiaosai
    剛才在尋找gmf資料的時候發(fā)現(xiàn)了小小的blog,好棒啊,贊死了。看來以后要常來光顧了:)

    # re: 如何顯示PropertySheet視圖  回復(fù)  更多評論   

    2007-05-06 18:04 by xiaoxiaoleemin
    呵呵,真巧,不過還沒有GMF的內(nèi)容,我得抓緊時間整理了:)
    主站蜘蛛池模板: 亚洲色大成网站www尤物| 亚洲AV无码久久| 亚洲人成电影网站免费| 亚洲一区二区三区免费视频| 亚洲精品成人av在线| 无码A级毛片免费视频内谢| 亚洲成AV人片天堂网无码| 国产免费一区二区视频| 亚洲免费在线播放| 日本免费网站视频www区| 亚洲国产精品综合久久久| 无码高潮少妇毛多水多水免费| 亚洲欧洲国产成人精品| 成人无遮挡裸免费视频在线观看 | 国产青草视频免费观看97 | 美女被免费网站视频在线| 亚洲国产精品尤物YW在线观看| 美景之屋4在线未删减免费| 国产亚洲老熟女视频| 一级毛片免费观看不卡视频| 久久久亚洲AV波多野结衣| 成年午夜视频免费观看视频| 亚洲AV永久无码天堂影院| 亚洲精品尤物yw在线影院| 免费av片在线观看网站| 亚洲无mate20pro麻豆| 国产伦一区二区三区免费| 国产区在线免费观看| 亚洲激情校园春色| 国产精品jizz在线观看免费| 国产成人1024精品免费| 亚洲欧洲国产精品久久| 亚洲精品动漫人成3d在线 | 在线观看免费国产视频| 国产又黄又爽又大的免费视频| 97久久精品亚洲中文字幕无码| 成人免费无码大片A毛片抽搐色欲 成人免费无码大片a毛片 | 亚洲AV无码日韩AV无码导航| 91手机看片国产永久免费| 黄色一级视频免费观看| 精品亚洲成a人片在线观看|