分享
 
 
 

RCP财务管理程序v1.0完成:)

王朝java/jsp·作者佚名  2006-01-10
窄屏简体版  字體: |||超大  

期末考试终于考完了,非常累.

不过我还是忙里偷闲(其实是忍不住)写了个RCP程序:P

差不多实现了计划.

主界面如下:

about窗口:

写完程序,最大的感想就觉得RCP平台太优秀了,真的是喜欢eclipse.

完整Rcp程序下载地址是:

http://rapidshare.de/files/10185194/FinancePro1.0.zip.html

欢迎大家下载,帮我找找问题:P

中间遇到点小问题,不过都很快就解决了,把几个刚弄懂的小知识点都记下来,方便以后复习.

1.使用Observer模式时,在某个UI listener dispose时把它注销掉.

2.WorkbenchAdvisor和WorkbenchWindowAdvisor的功能:

As the name implies, a WorkbenchAdvisor tells the Workbench how to

behavehow to draw, what to draw, etc.

Window advisors are consulted at various points in the lifecycle of a

window (e.g., preWindowOpen() and postWindowCreate()) and have the

opportunity to control the creation of the window's contents.

3.IPageLayout.addView()

添加一个View,它带有标题,可以关掉、移动、增大、缩小.

IPageLayout.addStandaloneView()

添加一个StandalongView,可以关掉标题,所以可以设定不能关掉、移动、增大、缩小

.当程序只有一个view时这样做很好.

4.打开关闭程序时,自动保存perspective的views位置:

在自己的WorkbenchAdvisor类里面的initialize()方法里加入这样一句:

configurer.setSaveAndRestore(true);

象下面:

public void initialize(IWorkbenchConfigurer configurer) {

configurer.setSaveAndRestore(true);

}

5.关于用eclipse Debug的小技巧

这次好好爽了一下eclipse的debug功能,以前连断点都不用,现在想起来不知道浪费了

多少时间...

1)遇到某个错误时,设置eclipse自己找到出错的地方:

比如遇到这种错误输出:

Unhandled event loop exception

Reason:

java.lang.NullPointerException

那么

Run > Add Java Exception Breakpoint...

选NullPointerException,再用debug运行程序,eclipse会自己找到为null的变量.

2)设置断点:

比如上面的情况,找到为null的变量后,在那个程序第一行旁边双击就可以设置一个断

点了.然后,用Debugger Stepping功能一步一步观察变量到底为什么是null了.

6.在写程序的时候我想了一个如何判断在当前活动的workbench下某个view是否是打开

的,可以用这个方法:

private boolean isViewOpened(String viewID){

IViewReference[] viewReference =

FinancePlugin.getDefault().getWorkbench().getActiveWorkbenchWindow().getActivePage().getViewReferences();

//IViewReference[] viewReference =

//getSite().getWorkbenchWindow().getActivePage().getViewReferences();

for (int i = 0; i<viewReference.length; i++){

String vp = viewReference[i].getId();

if (vp.equals("starshus.csdn.blog.finance.views.ProjectTableView")){

return true;

}

}

return false;

}

因为是自己写的,不知道有没有更简单的方法.

7.关于RCP的大致结构,看到这副图思路挺清楚的.

8.WorkbenchWindow, the WorkbenchWindowAdvisor, and the ActionBarAdvisor的

UML顺序图,如下所示:

ActionBarAdvisor是用来产生MenuBar和ToolBar的Action的,因为实际程序中Action起

码上百个,它可以把他们方便的分开管理.

ActionBarAdvisor.makeActions()是在createWindowContents()之前调用的,而

createWindowContents()是用来创建WorkbenchWindow的组件,所以不能在

ActionBarAdvisor里生成的action中调用任何menu或window.

9. TableTree已经不建议使用了,我本来一直不想换,后来还是一狠心换用tree写成TableTree的样子:)

10.制作Product

在工作台里运行一点问题都没有,在导出完整的RCP Product时提示缺少插件,但是我

花了不少时间,错误是eclipse的run configurations那里,在产生plugin.product文件

时,要好好检查Eclipse Application的Configuration.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有