[Eclipse]GEF入門系列(十一、樹的一個實現)

兩天前GEF發布了3.1M7版本,但使用下來發現和M6沒有什麼區別,是不是主要為了和 Eclipse版本相配套?希望3.1正式版早日發布,應該會新增不少內容。上一篇文章介紹了如 何實現表格功能,在開發過程中,另一個經常用到的功能就是樹,雖然SWT提供了標準的樹控 件,但使用它完成如組織圖這樣的應用還是不夠直觀和方便。在目前版本(3.1M7)的 GEF中雖然沒有直接支援樹的實現,但Draw2D提供的例子程式裡卻有我們可以利用的代碼

[Eclipse]GEF入門系列(十、表格的一個實現)

在目前的GEF版本(3.1M6)裡,可用的LayoutManager還不是很多,在新聞群組裡經常會看 到要求增加更多布局的文章,有人也提供了自己的實現,例如這個GridLayout,相當於SWT中 GridLayout的Draw2D實現,等等。雖然可以肯定GEF的未來版本裡會增加更多的布局供開發人員 使用(可能需要很長時間),然而目前要用GEF實現表格的操作還沒有很直接的辦法,這裡說 說我的做法,僅供參考。實現表格的方法決定於模型的設計,初看來我們似乎應該有這些類:表格(Table)、行

[Eclipse]GEF入門系列(九、增加易用性)

當一個GEF應用程式實現了大部分必需的業務功能後,為了能讓使用者使用得更方便,我們 應該在易用性方面做些考慮。從3.0版本開始, GEF增加了更多這方面的新特性,開發人員很 容易利用它們來改善自己的應用程式介面。這篇文章將介紹主要的幾個功能,它們有些在GEF 2.1中就出現了,但因為都是關於易用性的而且以前沒有提到,所以放在這裡一起來說。可摺疊調色盤在以前的例子裡,我們的編輯器都繼承自GraphicalEditorWithPalette。GEF 3.0提供了

[Eclipse]GEF入門系列(八、使用EMF構造GEF的模型)

GEF的設計沒有對模型部分做任何限制,也就是說,我們可以任意構造自己的模型,唯一 須要保證的就是模型具有某種訊息機制,以便在發生變化時能夠通知GEF(通過EditPart)。 在以前的幾個例子裡,我們都是利用java.beans包中的PropertyChangeSupport和 PropertyChangeListener來實現訊息機制的,這裡將介紹一下如何讓GEF利用EMF構造的模 型.EMF使用自己定義的Ecore作為元模型,在這個元模型裡定義了EPackage、EClassifier、

[Eclipse]GEF入門系列(七、XYLayout和展開/摺疊功能)

前面的文章裡曾說過如何使用布局,當時主要集中在ToolbarLayout和FlowLayout(統稱 OrderedLayout),還有很多應用程式使用的是可以自由拖動子圖形的布局,在GEF裡稱為 XYLayout,而且這樣的應用多半會需要在圖形之間建立一些連接線,比如下圖所示的情景。 串連的出現在一定程度上增加了模型的複雜度,連接線的重新整理也是GEF關注的一個問題,這裡 就主要討論這類應用的實現,並將特別討論一下展開/摺疊(expand/collapse)功能的實現 。圖1

[Eclipse]GEF入門系列(六、添加菜單和工具條)

我發現一旦稍稍體會到GEF的妙處,就會很自然的被它吸引住。不僅是因為用它做出的圖 形介面好看,更重要的是,UI中最複雜和細微的問題,在GEF的設計中無不被周到的考慮並以 適當的模式解決,當你瞭解了這些,完全可以把這些解決方案加以轉換,用來解決其他領域 的設計問題。去年黃老大在一個GEF項目結束後,仍然沒有放棄對它的繼續研究,現在甚至利 用業餘時間開發了基於GEF的SWT/JFace增強軟體包,Eclipse和GEF的魅力可見一斑。我相信 在未來的兩年裡,由於RCP/GEF等技術的成熟,Java

[Eclipse]GEF入門系列(五、淺談布局)

雖然很多GEF應用程式裡都會用到串連(Connection),但也有一些應用是不需要用串連 來表達關係的,我們目前正在做的這個項目就是這樣一個例子。在這類應用中,模型對象間 的關係主要通過圖形的包含來表達,所以大多是一對多關聯性。圖1 不使用串連的GEF應用先簡單描述一下我們這個項目,該項目需要一個圖形化的模型編輯器,主要功能是在一個 具有三行N列的表格中自由增加/刪除節點,節點可在不同儲存格間拖動,可以合并相鄰節點

[Eclipse]GEF入門系列(四、其他功能)

最近由於實驗室任務繁重,一直沒有繼續研究GEF,本來已經掌握的一些東西好象又丟掉 了不少,真是無奈啊,看來還是要經常碰碰。剛剛接觸GEF的朋友大都會有這樣的印象:GEF 裡概念太多,比較繞,一些能直接實現的功能非要拐幾個彎到另一個類裡做,而且很多類的 名字十分相似,加上不知道他們的作用,感覺就好象一團亂麻。我覺得這種情況是由圖形用 戶介面(GUI)的複雜性所決定的,GUI看似簡單,實際上包含了相當多的邏輯,特別是GEF處

[Eclipse]GEF入門系列(三、應用執行個體)

構造一個GEF應用程式通常分為這麼幾個步驟:設計模型、設計EditPart和Figure、設計 EditPolicy和Command,其中 EditPart是最主要的一部分,因為在實現它的時候不可避免的 要使用到EditPolicy,而後者又涉及到Command。現在我們來看個例子,它的功能非常簡單,使用者可以在畫布上增加節點(Node)和節點間 的串連,可以直接編輯節點的名稱以及改變節點的位置,使用者可以撤消/重做任何操作,有一

[Eclipse]GEF入門系列(二、GEF概述)

在前面的文章已經提到,GEF(Graphical Editor Framework)是一個圖形化編輯架構, 它允許開發人員以圖形化的方式展示和編輯模型,從而提升使用者體驗。這樣的應用程式有很 多,例如:UML類圖編輯器、圖形化XML編輯器、介面設計工具以及圖形化資料庫結構設計工 具等等。歸結一下,可以發現它們在圖形化編輯方面具有以下共同之處:提供一個編輯地區和一個工具條,使用者在工具條裡選擇需要的工具,以拖動或單擊的方式

[Eclipse]GEF入門系列(一、Draw2D)

關於Java2D相信大家都不會陌生,它是基於AWT/Swing的二維圖形處理包, JDK附帶的示 常式序向我們展示了Java2D十分強大的圖形處理能力。在Draw2D出現以前,SWT應用程式在這 方面一直處於下風,而Draw2D這個SWT世界裡的Java2D改變了這種形勢。可能很多人還不十分瞭解GEF和Draw2D的關係:一些應用程式是只使用Draw2D,看起來卻

[Eclipse]GEF入門系列(序)

由於工作的需要,最近開始研究GEF(Graphical Editor Framework)這個架構,它可以 用來給使用者提供圖形化編輯模型的功能,從而提升使用者體驗,典型的應用如圖形化的流程設 計器、UML類圖編輯器等等。其實一年多來我們做的項目都是和它有關的,只是之前我具體負 責的事情和它沒什麼關係。那時也看過黃老大寫的代碼,EMF和GEF混在一起特別暈,沒能堅 持看下去。這次自己要動手做了,正好趁此機會把它搞明白,感覺GEF做出來的東西給人很專 業的感覺,功能也很強大,應該挺有前途的。此外,

使用Eclipse遠端偵錯Java應用程式

遠端偵錯對應用程式開發十分有用。例如,為不能託管開發平台的低端機器開發程式,或 在專用的機器上(比如服務不能中斷的 Web 服務器)偵錯工具。其他情況包括:運行在記憶體 小或 CUP 效能低的裝置上的 Java 應用程式(比如行動裝置),或者開發人員想要將應用程 序和開發環境分開,等等。先決條件啟動配置類型啟動配置 儲存一 組用於啟動程式的屬性。啟動配置類型是一種可以在 Eclipse 平台上啟動的獨特程式。如果您還沒安裝該程式,請下載 Eclipse V3.4(Ganymede)。在

使用Eclipse RCP進行傳統型程式開發(五):2D繪圖

看完這篇文章,可以實現如下介面:當我第一次看到RCP的時候,我就夢想著有一天能夠用它開發介面華麗的2D和3D程式,經 曆過前面的探索,今天終於可以揭開2D繪圖的神秘面紗。在包資源管理員的外掛程式依賴項中, 我們一眼就可以看到org.eclipse.swt.graphics包,毫無疑問,和2D繪圖有關的類就在這個 包中。還有一個org.eclipse.swt.opengl包也很引人注目,但是裡面卻只有GLCanvas類和

使用Eclipse RCP進行傳統型程式開發(四):在Windows中使用Active X控制項

看完這篇文章,可以開發如下的介面:沒有嵌入Active X控制項的視圖:嵌入瀏覽器控制項,並顯示www.blogjava.net的首頁:在Windows系統下,OLE和Active X控制項是兩個非常迷人的技術,它們的基礎都是COM。 OLE的體驗,就是平時我們可以把Excel表格嵌入Word文檔,或者把PDF嵌入瀏覽器顯示一樣, 而Active X控制項更是無處不在,做VB開發和網頁開發的人都應該很熟悉。使用Windows系統中 豐富的Active

使用Eclipse RCP進行傳統型程式開發(三):視圖和透視圖

Eclipse RCP開發中,和使用者進行互動最多的介面,應該是視圖了,而透視圖就是將已有 的視圖、菜單、工具列、編輯器等等進行組合和布局。看完這一節,我們就可以建立如下圖 這樣的程式介面了。首先我們來介紹一下視圖,建立一個視圖其實非常簡單,只要從 org.eclipse.ui.part.ViewPart繼承一個類,然後在plugin.xml中進行視圖的配置。其中, 向視圖中添加控制項的操作,我們即可以手工編寫,也可以使用Designer外掛程式,我這裡推薦大

Eclipse RCP外掛程式開發中引用打包在外掛程式目錄下的圖片資源

利用Eclipse外掛程式技術開發的RCP,如果你使用相對主目錄/絕對路徑的方式來 訪問圖片等檔案資源,在Eclipse環境下運行是沒有問題的,但是在你導成外掛程式 plugins時,它們全部導成了一個jar檔案,這時原來可以正確啟動並執行代碼就會出 問題。解決這個問題很簡單,用Eclipse提供的 org.eclipse.ui.plugin.AbstractUIPlugin類的imageDescriptorFromPlugin方 法,範例程式碼如下:String imagePath =

Eclipse RCP外掛程式開發中經常調用的幾個方法

1、重啟RCP應用PlatformUI.getWorkbench().restart();2、在外掛程式資產庫中尋找Perspective(其它extend point資源的獲得類似)IPerspectiveDescriptoripd=PlatformUI.getWorkbench ().getPerspectiveRegistry().findPerspectiveWithId (FavoritePerspective.ID);

利用Eclipse開發Hibernate應用程式

Eclipse是目前非常流行的開發平台,開放擴充的架構讓很多程式員找到了自己個人化的工作環境,Hibernate也是目前牛叉得不得了的架構,至少在EJB 3大行其道之前,它是我們在考慮OR映射時非常好的選擇。本文主要介紹如何利用Hibernate Syn外掛程式在Eclipse 3.0.1中快速的開發Hibernate應用程式,提高我們的工作效率。關於Hibernate架構的細節,本文不做過多的討論,請參考相關資料,推薦《Hibernate in

Eclipse V3.1中的Java泛型支援

Java 中的泛型幾乎從第一個版本開始,Java 技術的創立者們就已經開始討論對該語言添加 泛型支援。C++ 通過標準模板庫對泛型進行支援,但是由於缺少所有其他類(嵌 入在 Java 語言中的Object 類中)的一個統一父類,泛型的實現也受到阻礙。Java程式設計語言的泛型支援是其曆史上最重大的文法變化。由於某些顯而易見的原因,工具支援比其他 SDK 升級的步法要慢得多。儘管如此,現在 Eclipse V3.1 已經對這些語言的新特性有了出色的支援。本文重點介紹其中的一些新特 性。Java 5

總頁數: 432 1 .... 296 297 298 299 300 .... 432 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.