新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于GEF的MiniGUI可視化開發(fā)工具設(shè)計(jì)

基于GEF的MiniGUI可視化開發(fā)工具設(shè)計(jì)

作者: 時(shí)間:2011-11-21 來源:網(wǎng)絡(luò) 收藏
MenuItem對應(yīng)的Figure還應(yīng)提供方法DimensiongetPreferredSize(int hint,int hint2),用于獲得MenuItem屬性改變導(dǎo)致的Figure新的大小和位置。
Menu的EditPart還應(yīng)提供以下方法:
①重繪自己和下面所有的MenuItem及其下級的Menu。函數(shù)Rectangle CalcMenuSize(MenuEditPart)用于得到一個(gè)能夠容納下包括的所有MenuItem的矩形。

本文引用地址:http://butianyuan.cn/article/150039.htm


②遞歸地將要update的MenuEditPart的下級Menu中,當(dāng)前可見的所有Menu及其對應(yīng)的MenuItem變?yōu)椴豢梢姟?/p>


3.3 數(shù)據(jù)存儲
可擴(kuò)展標(biāo)記語言(Extensible Markup Language,XML)與其他格式的語言相比,具有以下優(yōu)勢:具有良好的擴(kuò)展性,允許使用者創(chuàng)建和使用自己定義的標(biāo)記來定義控件的類型和屬性;樹狀存儲結(jié)構(gòu)和良好的自描述性,非常適合對界面元素進(jìn)行描述;XML的靈活性提供了一種結(jié)構(gòu)化的數(shù)據(jù)表示方式,使得用戶界面分離于結(jié)構(gòu)化數(shù)據(jù)。
因此,界面工具將界面結(jié)果存儲為XML格式。由于Java中提供了XML文檔生成和解析的類,因而簡化了編碼工作量,增強(qiáng)了軟件可靠性。
示例如下:


最外層的Project表示內(nèi)層都是界面的布局,第2層Dialog表示其內(nèi)層對應(yīng)一個(gè)對話框布局,第3層由多個(gè)XXCtrl>和/XXCtrl>對構(gòu)成(XXCtrl對應(yīng)不同的控件名,比如buttonCtrl對應(yīng)button控件)。每個(gè)XXCtrl代表一個(gè)控件,XXCtrl>和/XXCtrl>對里面是控件的屬性。第2層也可由多個(gè)Content>和/Content>對構(gòu)成,Content可為Dialog(對話框)、Menu(菜單)、Tool-Bar(狀態(tài)條)、Icon(位圖),其內(nèi)層根據(jù)Content不同而由不同的XXCtrl對構(gòu)成。


4 實(shí)驗(yàn)結(jié)果
工具的運(yùn)行界面如圖6所示。左側(cè)為工程管理區(qū),可以看到當(dāng)前工程建立的所有界面布局。中間部分的編輯區(qū)是一個(gè)打開的對話框布局,可在這里進(jìn)行控件的drop/drag、undo/redo、move、delete、resize等操作。右側(cè)是控件屬性編輯區(qū),用于修改控件屬性(比如ID、文字風(fēng)格、邊框等)。

結(jié) 語
本文了一個(gè),利用Eclipse 實(shí)現(xiàn)。用戶使用本工具可以對圖形用戶界面進(jìn)行的設(shè)計(jì)及修改,同時(shí)可以擴(kuò)充自己的控件、定義控件的屬性,豐富界面的表現(xiàn)形式。實(shí)驗(yàn)表明,本工具在實(shí)際系統(tǒng)中運(yùn)行良好穩(wěn)定,有效地提高了圖形用戶界面的開發(fā)效率。


上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉