在EclipseRCP中正確的加載圖像文件

          Posted on 2005-11-29 19:21 nemo 閱讀(1372) 評論(1)  編輯  收藏 所屬分類: EclipseRCP/SWT/JFACE

          最近一位同事也在用RCP開發(fā),對圖像文件的加載頭疼不已。
          想起幾個(gè)月前我在開發(fā)時(shí)也有類似的事情發(fā)生,于是簡單總結(jié)了一下,希望對大家有些用處。
          由于Eclipse RCP 需要面向不同的平臺,所以不能用一般的方法來加載圖元,我們可以使用ImageDescriptor類來對圖元進(jìn)行加載。而且我們在加載完圖元之后,必須親自將圖元dispose掉,否則有可能會導(dǎo)致系統(tǒng)資源泄漏。
          實(shí)現(xiàn)方法一:

          1. Application文件中添加本工程的ID(String類型,只要與plugin.xml中的工程ID相同即可)
          2. 在想要獲得圖像文件的類中實(shí)現(xiàn)createImageDescriptorFor(String id)方法。

          具體實(shí)現(xiàn)如下:

          public ImageDescriptor createImageDescriptorFor(String id) //id表示圖形文件相對于本工程的默認(rèn)路徑.

          {

          URL url = Platform.getBundle(pluginId).getEntry(id);//pluginId表示本工程的ID.
          return ImageDescriptor.createFromURL(url);

          }
          實(shí)現(xiàn)方法二:
          調(diào)用org.eclipse.ui.plugin.AbstractUIPlugin.imageDescriptorFromPlugin(String pluginId, String imageFilePath)方法。
          仍然需要定義pluginId。
          舉例:假設(shè)我們的圖像文件為本工程的/icons/image.gif。
          那么我們要加載圖元可以使用一下語句:
          Image image1 = org.eclipse.ui.plugin.AbstractUIPlugin.imageDescriptorFromPlugin(pluginId, "/icons/image.gif");

          Feedback

          # re: 在EclipseRCP中正確的加載圖像文件  回復(fù)  更多評論   

          2006-09-01 16:14 by lovexiu111
          怎么樣加載eclipse自帶的圖元?
          是不是3.0和3.2版本的方式不一樣?

          posts - 21, comments - 74, trackbacks - 0, articles - 3

          Copyright © nemo

          主站蜘蛛池模板: 成安县| 遵义市| 诏安县| 资源县| 开远市| 上高县| 鄂托克旗| 华亭县| 石柱| 黄石市| 武义县| 波密县| 安岳县| 天峨县| 敦化市| 莱西市| 永年县| 泸州市| 南京市| 富蕴县| 南乐县| 广西| 松阳县| 安多县| 元朗区| 宜都市| 宁晋县| 全椒县| 惠东县| 宁南县| 新竹市| 富蕴县| 绥棱县| 绩溪县| 襄樊市| 彭泽县| 扶余县| 洪洞县| 大名县| 册亨县| 化州市|