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

來源:互聯網
上載者:User

看完這篇文章,可以實現如下介面:

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

我剛開始發現org.eclipse.swt.graphics包的時候,要使用包裡面的類卻不是那麼容易。 比如,從名稱上可以看出Image類是處理映像的,但是它的建構函式無一例外都需要一個 Device參數,於是,我迷惑了,Device,我該如何取得?再比如,GC類裡面含有各種繪圖的 方法,但是GC的建構函式需要Drawable參數,那Drawable我又該如何獲得呢?

於是,我在網上搜尋關於SWT 2D方面的內容,終於,讓我看到了別人這樣構造Image和GC :

Image img = new Image(display,"pic.gif");

GC gc = new GC(Image);

你能看出什嗎?為什麼display是Device的子類?為什麼Image是Drawabe的子類?最簡單 的辦法,使用Eclipse的類階層視圖查看:

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.