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

在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條評論
主站蜘蛛池模板: 伊人资源 | 亚洲免费视频播放 | 国产精品一级毛片不收费 | 99热这里只有精品在在 | 日日噜噜噜夜夜爽爽狠狠69 | 色综合天天综合给合国产 | 最新久久免费视频 | 国内精品久久久久香蕉 | 免费特黄级夫费生活片 | 亚洲在线视频免费观看 | 国产精品一区在线免费观看 | 99在线视频播放 | 亚洲狠狠婷婷综合久久久久图片 | 日韩亚洲国产综合久久久 | 国产三级日产三级日本三级 | 亚洲一区有码 | 久久久久国产精品美女毛片 | 国产一级特黄a大片免费 | 涩涩色视频在线播放 | 黄片毛片一级片 | 最新中文字幕一区二区乱码 | 欧美久久亚洲精品 | 久草综合视频在线 | 欧美成a | 播放一级录像片 | 国产成人久久精品二区三区牛 | 国内精品伊人久久久影视 | 牛牛影视免费观看成人 | 久久都是精品 | 青青热久免费精品视频精品 | 免费中文字幕在线观看 | 国产精品久久新婚兰兰 | 一区在线免费观看 | 久草中文网 | 亚洲欧美精品一中文字幕 | 印度老妇bbwfreexxx | 久久澡| 香蕉网伊在线中文慕大全 | 色九九影院 | 国产精品视频免费在线观看 | 久久精品亚瑟全部免费观看 |