Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 编程语言 > Java > 动态改变RCP应用程序的标题
【标  题】:动态改变RCP应用程序的标题
【关键字】:RCP
【来  源】:http://www.blogjava.net/dearwolf/archive/2006/12/13/87554.html

动态改变RCP应用程序的标题

Your Ad Here 我们知道,Title是在ApplicationWorkbenchWindowAdvisor里面通过

????public?void?preWindowOpen()?{
????????IWorkbenchWindowConfigurer?configurer?
=?getWindowConfigurer();
????????configurer.setInitialSize(
new?Point(600,?500));
????????configurer.setShowCoolBar(
false);
????????configurer.setShowStatusLine(
true);
????????configurer.setShowProgressIndicator(
true);
????????configurer.setTitle(xxx
);
????}

来实现的,那么如何在运行时动态的更改它呢?

最开始一直在想如何获得IWorkbenchWindowConfigurer,但是一点头绪都没有,后来到RCP新闻组里面问了一下,两个人给了回复,不过都不怎么满意,但其中一个给了我启示,他信中写道:
I've used the following technique:

public?static?void?changeAppTitle(String?newTitle)?{
????????Display?display?
=?Display.getDefault();
????????
if?(display?!=?null)?{
????????????????
//?Look?at?all?the?shells?and?pick?the?first?one
????????????????
//?that?is?a?workbench?window.
????????????????Shell?shells[]?=?display.getShells();
????????????????
for?(int?i?=?0;?i?<?shells.length;?i++)?{
????????????????????????Object?data?
=?shells[i].getData();
????????????????????????
//?Check?whether?this?shell?points?to?the?Application?main?window's
shell:
????????????????????????
if?(data?instanceof?IWorkbenchWindow)?{
????????????????????????????????shells[i].setText(newTitle);
????????????????????????????????
break;
????????????????????????}
????????????????}
????????}
}


既然可以通过IWorkbenchWindow的Shell来设置标题,那么一切就好解决了。

在ActionBarAdvisor中初始化Action时,把WorkbenchWindow作为参数传入构造器中,然后在Action中就可以使用window.getShell().setText()了:)
初学 Eclipse RCP:【上一篇】
用 Eclipse.exe 启动自己写的类(带源码):【下一篇】
【相关文章】
  • 初学 Eclipse RCP
  • 使用Eclipse RCP进行桌面程序开发(六):向OpenGL进军
  • 我们何时使用Eclipse RCP?—Eclipse RCP的应用场合
  • 使用Eclipse RCP进行桌面程序开发(五):2D绘图
  • 使用Eclipse RCP进行桌面程序开发(四):在Windows中使用Active X控件
  • 使用Eclipse RCP进行桌面程序开发(三):视图和透视图
  • strcpy ( )
  • 使用Eclipse RCP进行桌面程序开发(二):菜单、工具栏和对话框
  • 使用Eclipse RCP进行桌面程序开发(一):快速起步
  • 为RCP程序增加关闭提示和关闭到系统托盘
  • 【随机文章】
  • FTTB/C+塑料光纤局域网实现FTTH
  • GSP算法与PrefixSpan算法的比较
  • 什么是Flex?(转载)
  • 从两个团队中学到的
  • ASP.NET应用中十大常见的潜在问题
  • 启动java到unix后台
  • (转载)CVS使用速成配置
  • ASP.NET 2.0中XSLT的使用
  • ? 由招行信用卡积分200万分换帕萨特想到的 ?
  • web:由过程到oop的思考
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 软讯网络 All Rigths Reserved.