您好,登錄后才能下訂單哦!
這篇文章主要介紹“Eclipse中perspective的使用方法有哪些”,在日常操作中,相信很多人在Eclipse中perspective的使用方法有哪些問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Eclipse中perspective的使用方法有哪些”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
這里要介紹的是如何給你的RCP程序或Eclipse插件定義透視圖,并向透視圖中添加視圖及對(duì)各視圖間的擺放位置給出定義。 好,進(jìn)入正題,給我們的插件定義一個(gè)透視圖先:定義透視圖的方法相信很多人都比較清楚,要擴(kuò)展org.eclipse.ui.perspectives擴(kuò)展點(diǎn),好,直接在我們的plugin.xml文件中加入下面一句代碼就ok了:
﹤extension point="org.eclipse.ui.perspectives"> ﹤perspective class="com.test.blog.core.ui.perspective.Perspective" icon="icons/amc_perspect.gif" id="com.test.blog.core.ui.perspective.Perspective" name="%perspective.amc"> ﹤/perspective> ﹤/extension> |
上面的代碼中,表明我們的透視圖id為org.talend.amc.plugin.Perspective,好,記住這個(gè)id。下面我們就要向這個(gè)透視圖中來(lái)添加我們的view(視圖)了。有兩種方法都可以實(shí)現(xiàn)視圖的添加,一種是通過(guò)代碼直接添加,另外一種方法則是直接就在plugin.xml里進(jìn)行配置:
通過(guò)代碼向已知透視圖中添加視圖并布局
上面的代碼中已指出該perspective所對(duì)應(yīng)的類為org.talend.amc.plugin.Perspective,該類需要實(shí)現(xiàn)IPerspectiveFactory接口,并實(shí)現(xiàn)它的createInitialLayout(IPageLayout layout) 方法,createInitialLayout(IPageLayout layout) 方法就能夠?qū)崿F(xiàn)對(duì)perspective中view的布局,詳細(xì)代碼如下:
package com.test.blog.core.ui.perspective; import org.eclipse.ui.IFolderLayout; import org.eclipse.ui.IPageLayout; import org.eclipse.ui.IPerspectiveFactory; import com.test.blog.core.ui.views.detaillog.DetailLogsView; import com.test.blog.core.ui.views.jobinfo.JobInformationView; import com.test.blog.core.ui.views.statinfo.DetailStatsView; import com.test.blog.core.ui.views.statinfo.SimpleStatsView; /** *//** * The class define for the test blog perspective. ﹤br/> * * $Id: Perspective.java,v 1.9 2007/03/23 07:48:54 pub Exp $ * */ public class Perspective implements IPerspectiveFactory ...{ public static final String ID = "com.test.blog.core.ui.perspective.Perspective"; //$NON-NLS-1$ public void createInitialLayout(IPageLayout layout) ...{ //這里不需要顯示editor,故而設(shè)置為不可見(jiàn) layout.setEditorAreaVisible(false); String editorArea = layout.getEditorArea(); //下面給出的是各view的位置布局定義,這些代碼都可以直接在plugin.xml進(jìn)行配置,可以達(dá)到相同效果 layout.addView(JobInformationView.ID, IPageLayout.LEFT, 0.45f, editorArea); layout.addView(DetailLogsView.ID, IPageLayout.BOTTOM, 0.4f, editorArea); String logInfoFolderID = "position.statlog"; IFolderLayout bottomFolder = layout.createFolder(logInfoFolderID, IPageLayout.BOTTOM, 0.5f, JobInformationView.ID); bottomFolder.addView(SimpleStatsView.ID); bottomFolder.addView(DetailStatsView.ID); layout.getViewLayout(JobInformationView.ID).setCloseable(false); layout.getViewLayout(SimpleStatsView.ID).setCloseable(false); layout.getViewLayout(DetailStatsView.ID).setCloseable(false); } } |
這里只是在代碼中直接使用view id, 如果真要讓這些id所對(duì)應(yīng)的view顯示出來(lái),當(dāng)然還需要你在自己的插件中給出這些view id的定義。
在plugin.xml中直接添加視圖并配置布局
Eclipse 為各個(gè)view在透視圖的布局也提供了專用的擴(kuò)展點(diǎn),它就是org.eclipse.ui.perspectiveExtensions,利用這個(gè)擴(kuò)展點(diǎn),我們甚至不需要對(duì)org.talend.amc.plugin.Perspective類進(jìn)行任何修改,就可以按我們的要求向perspective中添加新的視圖(view), 比如要達(dá)到上面同效果的視圖布局,可向plugin.xml中添加以下配置代碼:
﹤extension point="org.eclipse.ui.perspectiveExtensions"> ﹤perspectiveExtension targetID="com.test.blog.core.ui.perspective.Perspective"> ﹤view id="com.test.blog.core.ui.views.jobinfo.JobInformationView" relative="org.eclipse.ui.editorss" relationship="left" ratio="0.45" closeable="false"/> ﹤view id="com.test.blog.core.ui.views.detaillog.DetailLogsView" relative="org.eclipse.ui.editorss" relationship="bottom" ratio="0.4"/> ﹤view id="com.test.blog.core.ui.views.statinfo.SimpleStatsView" relative="com.test.blog.core.ui.views.jobinfo.JobInformationView" relationship="bottom" ratio="0.5" closeable="false"/> ﹤view id="com.test.blog.core.ui.views.statinfo.DetailStatsView" relative="com.test.blog.core.ui.views.statinfo.SimpleStatsView" relationship="stack" closeable="false"/> ﹤/perspectiveExtension> ﹤/extension> |
運(yùn)行后,各view間的布局關(guān)系如下圖所示:
Eclipse的幫助文件中已對(duì)該擴(kuò)展點(diǎn)進(jìn)行了詳細(xì)的說(shuō)明,在Eclipse的幫助中直接搜索‘org.eclipse.ui.perspectiveExtensions’,即可得知該擴(kuò)展點(diǎn)的相關(guān)信息。
到此,關(guān)于“Eclipse中perspective的使用方法有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。