亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

在RCP定義狀態欄

系統 1799 0

Eclipse 中,每選中一個文件,底部的狀態欄上都會顯示出該文件的有關信息。客戶端軟件通常都會將一些全局的或當前的信息顯示在底部的狀態欄上。本文將在 RCP 中添加狀態欄功能。

首先,必須在 WorkbenchWindowAdvisor. preWindowOpen() 啟用狀態欄功能, configurer.setShowStatusLine(true);

<style type="text/css"> <!--code { font-family: Courier New, Courier; font-size: 10pt; margin: 0px; }--> </style> <!-- ======================================================== --><!-- = Java Sourcecode to HTML automatically converted code = --><!-- = Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard markus@jave.de = --><!-- = Further information: http://www.java2html.de = -->
<!-- start source code --> <!-- end source code --> <!-- start headline --> <!-- end headline -->
ApplicationWorkbenchWindowAdvisor.java
01 public void preWindowOpen(){
02IWorkbenchWindowConfigurerconfigurer=getWindowConfigurer();
03configurer.setInitialSize( new Point(600,400));
04configurer.setShowCoolBar( true );
05configurer.setShowStatusLine( true );
06configurer.setShowFastViewBars( true );
07configurer.setShowPerspectiveBar( true );
08configurer.setShowMenuBar( true );
09configurer.setShowProgressIndicator( true );
10configurer.setShowStatusLine( true );
11PlatformUI.getPreferenceStore().setDefault(
12IWorkbenchPreferenceConstants.ENABLE_ANIMATIONS, true );
13PlatformUI.getPreferenceStore().setDefault(
14IWorkbenchPreferenceConstants.SHOW_TRADITIONAL_STYLE_TABS,
15 false );
16PlatformUI.getPreferenceStore().setDefault(
17IWorkbenchPreferenceConstants.DOCK_PERSPECTIVE_BAR,
18IWorkbenchPreferenceConstants.TOP_RIGHT);
19}

和menu bar和 toolbar一樣,狀態欄也是由ActionBarAdvisor控制,在ActionBarAdvisor.fillStatusLine (IStatusLineManager)中,狀態欄信息的顯示都由IStatusLineManager控制。

狀態欄的結構

Fast views 可以將View拖到Fast views中,提供View的快捷訪問。

Icon/message 這里可以顯示圖標和信息

Progress 用來顯示進度條,通常是不可見的。當有IWorkbenchWindow.run() 調用時,顯示一個進度條和一個取消按鈕。

Contributions 由來顯示一些額外信息,例如Eclipse選中一個java editor時,底部的讀寫狀態,行數等信息。

Jobs progress 用來顯示執行的Job,默認是不現實。要啟用此功能,要設置IWorkbenchWindowConfigurator.setShowProgressIndicator(boolean).

一般 Icon/message已經可以滿足顯示信息的要求,如果想要添加,可以在ActionBarAdvisor.fillStatusLine (IStatusLineManager)執行IStatusLineManager.add(IContributionItem).

在View中使用StatusLine,當選中某個節點時,在狀態欄顯示節點信息。

為View中的TreeViewer添加監聽選擇事件:

<!--CTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt--><style type="text/css"> <!--code { font-family: Courier New, Courier; font-size: 10pt; margin: 0px; }--> </style> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <!-- ======================================================== --><!-- = Java Sourcecode to HTML automatically converted code = --><!-- = Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard markus@jave.de = --><!-- = Further information: http://www.java2html.de = -->
1viewer.addSelectionChangedListener( new ISelectionChangedListener(){
2 public void selectionChanged(SelectionChangedEventevent){
3updateStatusline(event);
4}
5});
<!--CTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt--><style type="text/css"> <!--code { font-family: Courier New, Courier; font-size: 10pt; margin: 0px; }--> </style> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <!-- ======================================================== --><!-- = Java Sourcecode to HTML automatically converted code = --><!-- = Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard markus@jave.de = --><!-- = Further information: http://www.java2html.de = -->
<!-- start source code --> <!-- end source code -->
01 protected void updateStatusline(SelectionChangedEventevent){
02IStatusLineManagerstatusline= this .getViewSite().getActionBars()
03.getStatusLineManager();
04IStructuredSelectionselection=(IStructuredSelection)event
05.getSelection();
06Stringmsg=getSelectionMessage(selection);
07
08statusline.setMessage(msg);
09}
10
11 private StringgetSelectionMessage(IStructuredSelectionselection){
12 if (selection.isEmpty()){
13 return "";
14}
15 if (selection.size()==1){
16 return selection.getFirstElement().toString();
17}
18 return selection.size()+"itemsselected";
19}

??¨View??-?????¨StatusLine,???è????¥???????3???????????¤o??oé???????ˉ???

<!--CTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt--><style type="text/css"> <!--code { font-family: Courier New, Courier; font-size: 10pt; margin: 0px; }--> </style> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <!-- ======================================================== --><!-- = Java Sourcecode to HTML automatically converted code = --><!-- = Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard markus@jave.de = --><!-- = Further information: http://www.java2html.de = -->
<!-- start source code --> <!-- end source code -->
1 protected void inputChagned(){
2 if (groupName.getText().length()==0){
3showErrorOnStatusline("Groupnamecannotbeblank");
4 return ;
5}
6showErrorOnStatusline( null );
7setDirty( true );
8}
<!-- = END of automatically generated HTML code = --><!-- ======================================================== --><!--CTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dt--><style type="text/css"> <!--code { font-family: Courier New, Courier; font-size: 10pt; margin: 0px; }--> </style> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <!-- ======================================================== --><!-- = Java Sourcecode to HTML automatically converted code = --><!-- = Java2Html Converter 5.0 [2006-02-26] by Markus Gebhard markus@jave.de = --><!-- = Further information: http://www.java2html.de = -->
<!-- start source code --> <!-- end source code -->
1 protected void showErrorOnStatusline(Stringerror){
2IStatusLineManagerstatusline= this .getEditorSite().getActionBars()
3.getStatusLineManager();
4 if (error== null ){
5statusline.setErrorMessage(null,error);
6} else {
7statusline.setErrorMessage(ImageShop.get("error"),error);
8}
9}
<!-- = END of automatically generated HTML code = --><!-- ======================================================== -->

在RCP定義狀態欄


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲一区二区福利视频 | a毛片在线观看 | 欧美成人26uuu欧美毛片 | 99热最新在线 | 永久黄网站色视频免费观看99 | 亚洲欧洲日韩国产aa色大片 | 欧美在线一区二区三区精品 | 亚洲欧美日韩一区二区在线观看 | 一级黄色片免费 | 麻豆精品一区 | 日韩一区二区精品久久高清 | 亚洲 欧美 视频 | 一区二区三区在线免费观看视频 | 欧美丰满大乳大屁股毛片 | 狠狠操狠狠操狠狠操 | 亚洲国产字幕 | 久久午夜网 | 99在线热视频 | 不卡在线观看 | 国产成人精品无缓存在线播放 | 69hdxxxx中国| 精品久久久99大香线蕉 | 日本视频不卡 | 精品久久免费观看 | 国产精品福利在线观看入口 | 亚洲视频免 | 四虎激情影院 | 欧美猛交xxxxx| 亚洲一区二区中文 | 爱爱免费观看高清视频在线播放 | 全部费免一级毛片不收费 | 日日操日日射 | 日韩看片 | 在线色资源 | 国产三级做爰高清视频a | 亚洲午夜久久久精品影院视色 | 日本不卡高清中文字幕免费 | 国语高清精品一区二区三区 | 福利视频一区二区 | 99在线观看精品免费99 | 日韩国产欧美 |