中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

eclipse構建自定義菜單的實現

發布時間:2020-08-08 10:55:48 來源:ITPUB博客 閱讀:218 作者:mobox 欄目:編程語言

1.1 簡介

在開發工具上添加自己需要的功能,可以基于eclipse的插件進行擴展以滿足新功能的需要。下面就說說如何在eclipse上如何添加菜單項。

1.2 建立工程

新建eclipse插件工程

eclipse構建自定義菜單的實現

工程名自定義一下,我的工程名是com.popmenu.extend

eclipse構建自定義菜單的實現

選擇下一步,在這里可以用向導給我們自動生成的,也可以建立完成之后到擴展點自己添加,這里我們選擇默認的模板。

選擇popup模板

eclipse構建自定義菜單的實現

點擊下一步

eclipse構建自定義菜單的實現

其中Target Object’s Class:這里指定了目標對象,就是說在哪里點擊右鍵能夠顯示對應的菜單。

Submenu Name:這個是指定你要顯示的菜單在右鍵彈出后的名稱,我們起名叫“構建系統”。

Action Label:這個指定了顯示的子菜單的名稱,這里修改為“模板構建”。

Java Package Name:這里指定了點擊模板構建后的處理類的包名,使用默認。

Action Class:這個是處理類的名稱,改為TemplateAddAction。

Action is enabled for:表示選擇的是單選還是多選,這里用默認。

點擊完成。

生成的項目結構如下:

eclipse構建自定義菜單的實現

1.3 Eclipse的資源API

工作空間、項目、文件夾、文件對應的類型接口分別為IWorkspace、IProject、IFolder、IFile。資源相關

的接口都繼承了IResource接口,由于工作空間并不只是資源的管理者,因此IWorkspace并沒有繼承IResource

接口,為了將工作空間作為資源的管理者這一功能體現出來,抽象出了IWorkspaceRoot 的接口(即工作空間

根目錄),通過IWorkspace的getRoot 就可以得到對應的工作空間根目錄。由于工作空間根目錄、項目、文件

夾都是可以容納其他資源的,因此為它們抽取了一個基類接口IContainer。

類的層次結構圖如下:

eclipse構建自定義菜單的實現

資源接口的常見方法

(1) IResource

l  delete:刪除此資源。

l  getFileExtension:返回文件的擴展名。

l  getFullPath:返回此資源相對于工作空間根目錄的相對路徑,返回值類型是IPath。

l  getLocation:返回此資源在文件系統中的絕對路徑,返回值類型是IPath。

l  exists:判斷此資源是否存在。處理資源與使用Java.io.File 處理文件非常相似。IResource只是一個句柄。當調用像getProject、getFolder 這樣的方法時,會將句柄返回給資源,即使指定的資源并不存在。因此在必要的時候要使用exists 方法來確定資源是否存在。

l  getParent:得到父資源容器,返回值類型為IContainer。

l  getProject:返回此資源所屬的項目,返回值類型為IProject。

l  getProjectRelativePath:返回此資源在項目中的相對路徑,返回值類型是IPath。

l  getWorkspace:返回此資源所屬的工作空間,返回值類型為IWorkspace。

l  isSynchronized:判斷資源是否與文件系統同步。

(2) IContainer

l  exists(IPath path):判斷指定的路徑path是否在本容器內存在。

l  findMember:返回指定路徑的資源,返回值類型為IResource。

l  getDefaultCharset:返回此容器內資源的默認編碼。

l  getFile:返回指定路徑的文件,返回值類型為IFile。

l  getFolder:返回指定路徑的文件夾,返回值類型為IFolder。

l  members:返回容器下的所有直接資源,返回值類型為IResource[]。

(3) IFolder

l  create:創建此文件夾所代表的資源。

l  getFile:返回此文件夾下指定路徑下的文件,返回值類型為IFile。

l  getFolder:返回此文件夾下指定路徑下的文件夾,返回值類型為IFolder。

(4) IFile

l  appendContents:向文件中附加數據流,方法中有一個參數是InputStream類型,要添加的數據流就是在此流中。

l  create:用數據流創建文件,方法中有一個參數是InputStream類型,要創建的文件的數據流就是在此流中。

l  getCharset:返回文件的編碼。

l  setCharset:設定文件的編碼。

l  getContents:返回文件的流,返回值類型為InputStream。

l  setContents:用數據流設定文件的內容,方法中有一個參數是InputStream類型,要設定的文件的數據流就是在此流中。

(5) IWorkspaceRoot

l  getProject:返回指定名字的項目,返回值類型為IProject。

l  getProjects:返回工作空間中所有的項目,返回值類型為IProject[]。

1.4 設置工程

雙擊plugin.xml,選擇Dependencies,在eclipse的插件項目中如果想添加依賴,必須在此處添加不能通過工程右鍵進行添加,否則會找不到對應的jar提示錯誤。因為這里用到了org.eclipse.jdt.core包所以添加。

點擊添加:

eclipse構建自定義菜單的實現

然后點擊Extensions出現擴展點的選擇界面。

eclipse構建自定義菜單的實現

可以看到我們添加的菜單的內容。選中objectContribution將其它objectClass設置成 org.eclipse.jdt.core.IJavaElement 表示在java工程上邊能夠看到提示菜單,設置完成后就可以運行一下示例看看效果了。

右鍵選擇工程run as -> eclipse application

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

曲沃县| 兴城市| 女性| 吉木萨尔县| 克拉玛依市| 呼伦贝尔市| 舞阳县| 大石桥市| 霍邱县| 临海市| 洪泽县| 马边| 墨竹工卡县| 池州市| 南京市| 梁平县| 密山市| 江油市| 株洲市| 阳江市| 鹰潭市| 老河口市| 景谷| 东乌珠穆沁旗| 和静县| 麦盖提县| 高碑店市| 介休市| 瓦房店市| 曲阳县| 阿克陶县| 嘉义县| 石阡县| 汝州市| 怀仁县| 务川| 西宁市| 栖霞市| 永宁县| 云梦县| 吐鲁番市|