- 浏览: 415935 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
liyuanhoa_:
...
struts2.0中struts.xml配置文件详解 -
chenmingde:
...
Velocity应用(一) -
weizhikai_ai:
第二十六,当一个线程进入一个对象的一个synchronized ...
Java常见面试题(含答案) -
Aurora_lr:
...
Spring宠物商店学习笔记(一) - -
zs911zs:
all copy from http://www.iteye ...
Mule入门文档
最近作了个rcp程序的例子,结合这个例子来了解一下RCP的一些原理,怎样开发rcp程序,以及在初学RCP时会遇到哪些问题。希望对大家有所帮助
不当之处,请指正。
示例开发时环境:
------eclipse3.2
------jdk1.5.0_08
首先说一下我理解的RCP。一个rcp就是一个应用程序,只是这个应用程序不像大多数我们常用的应用程序。现在经常用的应用程序在发布后想再扩展一些功能,就需要重新在原有代码基础上进行修改。而rcp程序有一个优点,它可以实现插件是扩展。即可在现有程序的基础上增加一个插件,这个插件实现了我们要扩展的功能。
其实,整个eclipse体系中,核心的东西是一个很小的内核。其余的都是许许多多的插件由这个很小的内核组织起来,形成我们看到的eclipse的一个完整的开发环境。举个例子,我们整个实验室可以认为是一个eclipse开发环境。我们每个人就是一个插件,负责不同的方向,实现不同的功能;师兄可以认为是那个内核,负责把我们组织起来,把每个人的功能发挥出来。现在RCP也是同样的道理,可以认为一个RCP就是一个简化了的eclipse平台,它只包含5个插件:runtime是核心类,osgi是定义的一个标准,用来规范不同的插件,让他们可以相互协作。剩下的三个插件Workbench、SWT、JFace是用来显示给用户界面的。因此我们主要的精力应该放在对这三个插件的开发上。
前面介绍了一下eclipse和rcp的体系结构,在实际程序中遇到最多的还是一下几个主要概念,Workbench、Workbenchwindow、WorkbenchPage、Perspective、WorkbenchPart。其中WorkbenchPart又包含ViewPart和EditorPart;可以看出这几个概念是针对用户界面的。 理解了这几个概念以及它们之间的关系。基本上rcp就差不多了解了。需要注意的是这几个概念及其关系有个整体的把握即可,在初学阶段不应该花大量时间去研究它们为什么会存在这种关系,为什么是这样,而不是那样等等很抽象的一些东西上面。
下面就结合上面的几个主要概念,做一个比较简单的例子,几个主要步骤如下:
1、新建一个工程
2、创建一个ViewPart
3、为ViewPart创建菜单
4、添加菜单Action
5、创建一个EditorPart
6、创建调用EditorPart的Action
下面是具体步骤:
第一步:建立一个RCP工程。
file—> new—> project,选择plug-in project—> next 给工程起个名字MyRcp,其他不变—> next 这步中注意:在对话框最下面 Would you like to create a rich client application? 一定要选择yes —> next 这步选择一个模版:RCP applicatin with an intro—> next 直至finish
第二步:创建一个ViewPart
打开plugin.xml文件,会出现一个编辑器,找到extension选项卡 add—> 输入org.eclipse.ui.views 确定即可在extension选项页中会发现org.eclipse.ui.views,右键单击,选择new---views
设置 id=myrcp.view 记住此id,因为后面打开ViewPart时会用到。
Name=myrcp.view。
Class=myrcp.intro.CustomerViewPart此类继承了ViewPart接口。
在myrcp.intro包中创建这个类,注意创建时要实现ViewPart接口。具体如何实现如下:
在myrcp.intro包上右键—> new—> class 在对话框中给要建的类起名为:CustomerViewPart,
Superclass 对应的文本框中右侧Browse 在其中输入ViewPart确定即可。
现在只是扩展了一个ViewPart,并且实现了一个ViewPart对应的类,具体ViewPart上面有什么我们还没有定义。下一步在这个ViewPart上面添加一个talbeviewer,并且在tableviewer中要显示几行数据。说明一下,这几行数据是通过固定赋值的方式实例化三个Customer对象,因此在画tableviewer之前要做一下准备工作。
(1)、创建Customer对象类--------Customer.java。
(2)、建一个Customer工厂类------CustomerFactory.java 实际就是实例化几个Customer对象。
(3)、创建tableviewer的ContentProvider类-------CustomerContentProvider.java。
(4)、创建tableviewer的LabelProvider类--------CustomerLabelProvider.java。
tableviewer要想显示数据必须实现ContentProvider和LabelParvider类。
这四个.java文件放在附件的customer和provider文件夹中。
在CustomerViewPart的createPartControl()方法中加入创建tableviewer的代码。代码如下:
---------------------------------------------------------------------
viewer = new TableViewer(parent,SWT.MULTI|SWT.FULL_SELECTION);
TableColumn nameColumn = new TableColumn(viewer.getTable(),SWT.NONE);
nameColumn.setWidth(50);
nameColumn.setText( "姓名 ");
TableColumn sexColumn = new TableColumn(viewer.getTable(),SWT.NONE);
sexColumn.setWidth(50);
sexColumn.setText( "性别 ");
TableColumn bornDateColumn = new TableColumn(viewer.getTable(),SWT.NONE);
bornDateColumn.setWidth(150);
bornDateColumn.setText( "出生日期 ");
TableColumn postColumn = new TableColumn(viewer.getTable(),SWT.NONE);
postColumn.setWidth(70);
postColumn.setText( "职业 ");
viewer.getTable().setHeaderVisible(true);
viewer.getTable().setLinesVisible(true);
viewer.setContentProvider(new CustomerContentProvider());
viewer.setLabelProvider(new CustomerLabelProvider());
CustomerFactory.getCustomer().clear();
viewer.setInput(CustomerFactory.getCustomer());
---------------------------------------------------------------------
代码加入后一定会出现错误,
错误1:viewer没有定义,在CustomerViewPart定义一个TalbeViewer类型的属性viewer。
错误2:有几个包没导进来,方法ctrl+shift+o。
要想显示出ViewPart还需要在perspective.java的createInitialLayout()函数中加入如下代码
-------------------------------------------------------------------------------------
String editorArea=layout.getEditorArea();
layout.addView( "myrcp.view ",IPageLayout.LEFT, 0.5f, editorArea);
---------------------------------------------------------------------
第一个参数代表要显示ViewPart的id上文提到过
参数二:位置
参数三:所占比例
参数四:所在区域
问题点数:20 回复次数:4 显示所有回复显示星级回复显示楼主回复 修改 删除 举报 引用 回复
加为好友
发送私信
在线聊天
hit_aiping
等级:
可用分等级:中农
总技术分:484
总技术分排名:33643
发表于:2007-05-20 22:33:351楼 得分:0
第三步:为ViewPart创建菜单
为ViewPart加一个menu以及toolbar。当关闭ViewPart后仍可以通过它们来重新打开。
这儿注册的menu及toolbar是属于窗口的。因此可以直接在extension中对其扩展。
(这步操作比较繁琐,容易出问题)
方法:extension页中 add—> org.eclipse.ui.actionSets
(1)、右键org.eclipse.ui.actionSets new一个actionSet。Id=myrcp.OpenView
Name=myrcp.OpenView。注意visible一定要选择true
(2)、在这个actionSet上new一个menu。Id= OpenViewMenu
Label=Open
(3)、在这个menu上new一个separator。Name=ViewGroup。
(4)、回到第二步的actionSet,在它上面再new一个action。会看到有很多个属性。
设置如下:
Id=myrcp.openaction
Label=&Open
Menubarpath=OpenViewMenu/ViewGroup即上面定义的menu的id和separator的name。
toolbarPath= ViewGroup
icons=选择一个.gif的图片。补充一下,这之前应该把包含几个.gif格式的文件放到工程所在的目录下,这儿有个icons文件夹,在eclipse中刷新工程按F5
class=myrcp.intro.sampleAction
sampleAction是一个实现了接口IWorkbenchWindowActionDelegate的action类。
它用来触发点击菜单后打开ViewPart的动作
(5)、在myrcp.intro包中创建sampleAction类。注意实现接口 IWorkbenchWindowActionDelegate
(6)、在sampleAction中添加如下代码
定义一个变量:private IWorkbenchWindow window
重写run函数
---------------------------------------------------------------------
public void run(IAction action){
try{
window.getActivePage().showView( "myrcp.view ");
}catch (PartInitException e){
e.printStackTrace();
}
}
重写init函数
---------------------------------------------------------------------
public void init(IWorkbenchWindow window){
this.window = window;
}
---------------------------------------------------------------------
第四步:创建一个EditorPart
扩展一个EditorPart,回到extension页面。add----org.eclipse.ui.editors
(1)、New一个editor。
Id=myrcp.editor name=myrcp.editor
选择一个icons(必须)
Class=myrcp.intro.CustomerEditor。
创建这个类,它实现了EditorPart。(这儿不用直接创建,在包myrcp.intro中,导入EditorPart的java文件,在文件夹editor下)。
(2)、EditorPart会对应一个EditorInput,目的是实现对editor的输入数据。
因此再导入一个EditorInput。(在文件夹editor下)
第五步:为EditorPart创建一个Action
EditorPart已经扩展了,但没有地方可以调用它让他显示出来。可以为它加个toolbar或者memubar来打开。
有两种方法,第一种:如同打开ViewPart,定义一实现接口IWorkbenchWindowActionDelegate的action,然后在window窗口中扩展menu及toolbar。通过它们打开editor。但这样不容易对ViewPart中表格的数据进行控制。如取得一条记录的相关信息显示在editor中。或者有些属性内容太长在表格中无法全部显示出来,编辑时就会用到editor。
另一种方法就是直接给ViewPart添加一个toolbar。让这个toolbar来控制打开EditorPart。
这儿采用第二种方法。
(1)、在CustomerViewPart中定义一个函数contributeToActionBars(), 在此函数中,new一个Action,将此Action注册到ViewPart的toolbar中。
函数代码如下:
------------------------------------------------------------------
private void contributeToActionBars(){
ClickAction =new Action(){
public void run(){
Object customer =((StructuredSelection)viewer.getSelection()).getFirstElement();
CustomerEditorInput in = new CustomerEditorInput((Customer)customer);
try {
getSite().getWorkbenchWindow().getActivePage().openEditor(in,CustomerEditor.ID);
} catch (PartInitException e) {
MessageDialog.openError(getSite().getWorkbenchWindow().getShell(), "Error ", "Error opening view: " + e.getMessage());
}
}
};
ClickAction.setText( "编辑 ");
IActionBars bar=getViewSite().getActionBars();
bar.getToolBarManager().add(new ActionContributionItem(ClickAction));
}
这儿也会出现错误,ClickAction没有定义。在ViewPart中定义一个Action类型的ClickAction。
最后在createPartControl()中调用contributeToActionBars()即可
文章中用到的.java文件如有需要,请于hit_aiping@hotmail.com 联系
修改 删除 举报 引用 回复
加为好友
发送私信
在线聊天
hit_aiping
等级:
可用分等级:中农
总技术分:484
总技术分排名:33643
发表于:2007-05-20 22:34:312楼 得分:0
抛砖引玉,欢迎大家来交流!
修改 删除 举报 引用 回复
加为好友
发送私信
在线聊天
eviliw
等级:
可用分等级:乞丐
总技术分:459
总技术分排名:34924
发表于:2007-06-01 14:57:343楼 得分:10
(1)、New一个editor。
Id=myrcp.editor name=myrcp.editor
选择一个icons(必须)
我打开editor的时候报错:Unable to open editor, unknown editor ID
设了icons就对了,太bug了!!!
不当之处,请指正。
示例开发时环境:
------eclipse3.2
------jdk1.5.0_08
首先说一下我理解的RCP。一个rcp就是一个应用程序,只是这个应用程序不像大多数我们常用的应用程序。现在经常用的应用程序在发布后想再扩展一些功能,就需要重新在原有代码基础上进行修改。而rcp程序有一个优点,它可以实现插件是扩展。即可在现有程序的基础上增加一个插件,这个插件实现了我们要扩展的功能。
其实,整个eclipse体系中,核心的东西是一个很小的内核。其余的都是许许多多的插件由这个很小的内核组织起来,形成我们看到的eclipse的一个完整的开发环境。举个例子,我们整个实验室可以认为是一个eclipse开发环境。我们每个人就是一个插件,负责不同的方向,实现不同的功能;师兄可以认为是那个内核,负责把我们组织起来,把每个人的功能发挥出来。现在RCP也是同样的道理,可以认为一个RCP就是一个简化了的eclipse平台,它只包含5个插件:runtime是核心类,osgi是定义的一个标准,用来规范不同的插件,让他们可以相互协作。剩下的三个插件Workbench、SWT、JFace是用来显示给用户界面的。因此我们主要的精力应该放在对这三个插件的开发上。
前面介绍了一下eclipse和rcp的体系结构,在实际程序中遇到最多的还是一下几个主要概念,Workbench、Workbenchwindow、WorkbenchPage、Perspective、WorkbenchPart。其中WorkbenchPart又包含ViewPart和EditorPart;可以看出这几个概念是针对用户界面的。 理解了这几个概念以及它们之间的关系。基本上rcp就差不多了解了。需要注意的是这几个概念及其关系有个整体的把握即可,在初学阶段不应该花大量时间去研究它们为什么会存在这种关系,为什么是这样,而不是那样等等很抽象的一些东西上面。
下面就结合上面的几个主要概念,做一个比较简单的例子,几个主要步骤如下:
1、新建一个工程
2、创建一个ViewPart
3、为ViewPart创建菜单
4、添加菜单Action
5、创建一个EditorPart
6、创建调用EditorPart的Action
下面是具体步骤:
第一步:建立一个RCP工程。
file—> new—> project,选择plug-in project—> next 给工程起个名字MyRcp,其他不变—> next 这步中注意:在对话框最下面 Would you like to create a rich client application? 一定要选择yes —> next 这步选择一个模版:RCP applicatin with an intro—> next 直至finish
第二步:创建一个ViewPart
打开plugin.xml文件,会出现一个编辑器,找到extension选项卡 add—> 输入org.eclipse.ui.views 确定即可在extension选项页中会发现org.eclipse.ui.views,右键单击,选择new---views
设置 id=myrcp.view 记住此id,因为后面打开ViewPart时会用到。
Name=myrcp.view。
Class=myrcp.intro.CustomerViewPart此类继承了ViewPart接口。
在myrcp.intro包中创建这个类,注意创建时要实现ViewPart接口。具体如何实现如下:
在myrcp.intro包上右键—> new—> class 在对话框中给要建的类起名为:CustomerViewPart,
Superclass 对应的文本框中右侧Browse 在其中输入ViewPart确定即可。
现在只是扩展了一个ViewPart,并且实现了一个ViewPart对应的类,具体ViewPart上面有什么我们还没有定义。下一步在这个ViewPart上面添加一个talbeviewer,并且在tableviewer中要显示几行数据。说明一下,这几行数据是通过固定赋值的方式实例化三个Customer对象,因此在画tableviewer之前要做一下准备工作。
(1)、创建Customer对象类--------Customer.java。
(2)、建一个Customer工厂类------CustomerFactory.java 实际就是实例化几个Customer对象。
(3)、创建tableviewer的ContentProvider类-------CustomerContentProvider.java。
(4)、创建tableviewer的LabelProvider类--------CustomerLabelProvider.java。
tableviewer要想显示数据必须实现ContentProvider和LabelParvider类。
这四个.java文件放在附件的customer和provider文件夹中。
在CustomerViewPart的createPartControl()方法中加入创建tableviewer的代码。代码如下:
---------------------------------------------------------------------
viewer = new TableViewer(parent,SWT.MULTI|SWT.FULL_SELECTION);
TableColumn nameColumn = new TableColumn(viewer.getTable(),SWT.NONE);
nameColumn.setWidth(50);
nameColumn.setText( "姓名 ");
TableColumn sexColumn = new TableColumn(viewer.getTable(),SWT.NONE);
sexColumn.setWidth(50);
sexColumn.setText( "性别 ");
TableColumn bornDateColumn = new TableColumn(viewer.getTable(),SWT.NONE);
bornDateColumn.setWidth(150);
bornDateColumn.setText( "出生日期 ");
TableColumn postColumn = new TableColumn(viewer.getTable(),SWT.NONE);
postColumn.setWidth(70);
postColumn.setText( "职业 ");
viewer.getTable().setHeaderVisible(true);
viewer.getTable().setLinesVisible(true);
viewer.setContentProvider(new CustomerContentProvider());
viewer.setLabelProvider(new CustomerLabelProvider());
CustomerFactory.getCustomer().clear();
viewer.setInput(CustomerFactory.getCustomer());
---------------------------------------------------------------------
代码加入后一定会出现错误,
错误1:viewer没有定义,在CustomerViewPart定义一个TalbeViewer类型的属性viewer。
错误2:有几个包没导进来,方法ctrl+shift+o。
要想显示出ViewPart还需要在perspective.java的createInitialLayout()函数中加入如下代码
-------------------------------------------------------------------------------------
String editorArea=layout.getEditorArea();
layout.addView( "myrcp.view ",IPageLayout.LEFT, 0.5f, editorArea);
---------------------------------------------------------------------
第一个参数代表要显示ViewPart的id上文提到过
参数二:位置
参数三:所占比例
参数四:所在区域
问题点数:20 回复次数:4 显示所有回复显示星级回复显示楼主回复 修改 删除 举报 引用 回复
加为好友
发送私信
在线聊天
hit_aiping
等级:
可用分等级:中农
总技术分:484
总技术分排名:33643
发表于:2007-05-20 22:33:351楼 得分:0
第三步:为ViewPart创建菜单
为ViewPart加一个menu以及toolbar。当关闭ViewPart后仍可以通过它们来重新打开。
这儿注册的menu及toolbar是属于窗口的。因此可以直接在extension中对其扩展。
(这步操作比较繁琐,容易出问题)
方法:extension页中 add—> org.eclipse.ui.actionSets
(1)、右键org.eclipse.ui.actionSets new一个actionSet。Id=myrcp.OpenView
Name=myrcp.OpenView。注意visible一定要选择true
(2)、在这个actionSet上new一个menu。Id= OpenViewMenu
Label=Open
(3)、在这个menu上new一个separator。Name=ViewGroup。
(4)、回到第二步的actionSet,在它上面再new一个action。会看到有很多个属性。
设置如下:
Id=myrcp.openaction
Label=&Open
Menubarpath=OpenViewMenu/ViewGroup即上面定义的menu的id和separator的name。
toolbarPath= ViewGroup
icons=选择一个.gif的图片。补充一下,这之前应该把包含几个.gif格式的文件放到工程所在的目录下,这儿有个icons文件夹,在eclipse中刷新工程按F5
class=myrcp.intro.sampleAction
sampleAction是一个实现了接口IWorkbenchWindowActionDelegate的action类。
它用来触发点击菜单后打开ViewPart的动作
(5)、在myrcp.intro包中创建sampleAction类。注意实现接口 IWorkbenchWindowActionDelegate
(6)、在sampleAction中添加如下代码
定义一个变量:private IWorkbenchWindow window
重写run函数
---------------------------------------------------------------------
public void run(IAction action){
try{
window.getActivePage().showView( "myrcp.view ");
}catch (PartInitException e){
e.printStackTrace();
}
}
重写init函数
---------------------------------------------------------------------
public void init(IWorkbenchWindow window){
this.window = window;
}
---------------------------------------------------------------------
第四步:创建一个EditorPart
扩展一个EditorPart,回到extension页面。add----org.eclipse.ui.editors
(1)、New一个editor。
Id=myrcp.editor name=myrcp.editor
选择一个icons(必须)
Class=myrcp.intro.CustomerEditor。
创建这个类,它实现了EditorPart。(这儿不用直接创建,在包myrcp.intro中,导入EditorPart的java文件,在文件夹editor下)。
(2)、EditorPart会对应一个EditorInput,目的是实现对editor的输入数据。
因此再导入一个EditorInput。(在文件夹editor下)
第五步:为EditorPart创建一个Action
EditorPart已经扩展了,但没有地方可以调用它让他显示出来。可以为它加个toolbar或者memubar来打开。
有两种方法,第一种:如同打开ViewPart,定义一实现接口IWorkbenchWindowActionDelegate的action,然后在window窗口中扩展menu及toolbar。通过它们打开editor。但这样不容易对ViewPart中表格的数据进行控制。如取得一条记录的相关信息显示在editor中。或者有些属性内容太长在表格中无法全部显示出来,编辑时就会用到editor。
另一种方法就是直接给ViewPart添加一个toolbar。让这个toolbar来控制打开EditorPart。
这儿采用第二种方法。
(1)、在CustomerViewPart中定义一个函数contributeToActionBars(), 在此函数中,new一个Action,将此Action注册到ViewPart的toolbar中。
函数代码如下:
------------------------------------------------------------------
private void contributeToActionBars(){
ClickAction =new Action(){
public void run(){
Object customer =((StructuredSelection)viewer.getSelection()).getFirstElement();
CustomerEditorInput in = new CustomerEditorInput((Customer)customer);
try {
getSite().getWorkbenchWindow().getActivePage().openEditor(in,CustomerEditor.ID);
} catch (PartInitException e) {
MessageDialog.openError(getSite().getWorkbenchWindow().getShell(), "Error ", "Error opening view: " + e.getMessage());
}
}
};
ClickAction.setText( "编辑 ");
IActionBars bar=getViewSite().getActionBars();
bar.getToolBarManager().add(new ActionContributionItem(ClickAction));
}
这儿也会出现错误,ClickAction没有定义。在ViewPart中定义一个Action类型的ClickAction。
最后在createPartControl()中调用contributeToActionBars()即可
文章中用到的.java文件如有需要,请于hit_aiping@hotmail.com 联系
修改 删除 举报 引用 回复
加为好友
发送私信
在线聊天
hit_aiping
等级:
可用分等级:中农
总技术分:484
总技术分排名:33643
发表于:2007-05-20 22:34:312楼 得分:0
抛砖引玉,欢迎大家来交流!
修改 删除 举报 引用 回复
加为好友
发送私信
在线聊天
eviliw
等级:
可用分等级:乞丐
总技术分:459
总技术分排名:34924
发表于:2007-06-01 14:57:343楼 得分:10
(1)、New一个editor。
Id=myrcp.editor name=myrcp.editor
选择一个icons(必须)
我打开editor的时候报错:Unable to open editor, unknown editor ID
设了icons就对了,太bug了!!!
评论
1 楼
cuiran
2009-12-17
您好,看了你这个例子好像是RCP程序设计里面的对不。我现在也遇到了一个创建Wizard的问题,如果你这个例子成功了可否发到我的163邮箱,谢谢你。cuiran2001@163.com
发表评论
-
JFace简介
2008-11-28 16:58 4504JFace是在SWT之上的一层抽象。在SWT中,你通常创建控件 ... -
SWT 和 JFace, 第 2 部分: 简介
2008-11-28 16:57 1518SWT 和 JFace 系列的第 2 部分扩展了我们所学的关于 ... -
SWT 和 JFace,第 1 部分: 简介
2008-11-28 16:56 1780在这篇 SWT 和 JFace 系列 ... -
使用Eclipse RCP进行桌面程序开发(六):向OpenGL进军
2008-11-28 15:51 2726使用Eclipse RCP进行桌面程序开发(一):快速起步 ... -
使用Eclipse RCP进行桌面程序开发(五):2D绘图
2008-11-28 15:48 2776使用Eclipse RCP进行桌面程序开发(一):快速起步 ... -
使用Eclipse RCP进行桌面程序开发(四):在Windows中使用Active X控件
2008-11-28 15:47 2807使用Eclipse RCP进行桌面 ... -
使用Eclipse RCP进行桌面程序开发(三):视图和透视图
2008-11-28 15:44 9047使用Eclipse RCP进行桌面程序开发(一):快速起步 ... -
使用Eclipse RCP进行桌面程序开发(二):菜单、工具栏和对话框
2008-11-28 15:42 2772在使用Eclipse RCP进行桌面程序开发(一):快速起步中 ... -
使用Eclipse RCP进行桌面程序开发(一):快速起步
2008-11-28 15:39 1967所谓RCP,就是Rich Client P ... -
RCP应用程序开发系列(3)--入门程序代码分析
2008-11-28 15:17 1626前面介绍了一些文字性的东西,现在还是来看看代码,这样才感觉踏实 ... -
RCP应用程序开发系列(2)--创建第一个应用程序
2008-11-28 15:16 1441开发环境是用的Eclipse3.1 首先,创 ... -
RCP应用程序开发系列(1)
2008-11-28 15:15 1478一、SWT SWT 是一种 low-level 图形库,它提供 ... -
RCP框架解析
2008-11-28 15:15 1559RCP框架解析 当新建一个RCP工程时,Eclipse自动给 ... -
rcp实践
2008-11-28 15:14 2220这篇文章基本上是没怎么加我自己写的代码的,几乎全部是eclip ... -
Eclipse的RCP
2008-11-28 15:13 1412从Eclipse 3.1RC1开始,ve已经支持RCP(Ric ...
相关推荐
在Eclipse RCP中,ViewPart是用户界面中的一个组件,它通常显示特定的数据或提供交互式操作。每个ViewPart都有自己的ID和标签,可以被用户通过工作台(Workbench)的视图菜单进行打开和关闭。 占位功能...
现在我们来详细探讨一下这个"rcp与spring集成的一个简单例子"。 首先,集成的初衷是为了将Spring的灵活性和模块化引入到RCP应用中。通过Spring,我们可以轻松地管理对象的生命周期、实现松耦合,并利用其强大的AOP...
本示例是一个Eclipse RCP的实战演示,展示了如何在Eclipse RCP应用中实现View和Editor,以及可能涉及图表的展示。 在Eclipse RCP中,View和Editor是两种主要的用户界面组件。View通常用于显示辅助信息或工具,而...
Eclipse Rich Client Platform (RCP) ...总的来说,这个简单的Eclipse RCP源码示例提供了一个基础的学习平台,通过研究和实践,开发者能够深入理解Eclipse RCP的强大功能,并逐步创建出复杂、功能丰富的桌面应用程序。
在这个实例中,我们将深入探讨如何在RCP环境中实现一个基本的文本编辑器,帮助初学者更好地理解这一过程。 首先,我们需要了解Eclipse RCP的基本结构。RCP应用通常由多个插件组成,每个插件都有特定的功能。在这个...
通过新建一个类继承自`ViewPart`,并重写其`createPartControl()`方法,定义视图的显示内容和行为。 5. **添加菜单和工具栏** 使用`plugin.xml`配置菜单和工具栏,关联到相应的操作。操作(Action)是Eclipse RCP...
你需要创建一个新的插件,然后定义一个继承自`org.eclipse.ui.views.ViewPart`的类。这个类将作为显示图表的容器。 3. **绘制图表**:在视图类中,你需要使用JFreeChart API创建所需的图表。例如,你可以创建一个`...
在代码实战部分,我们会逐步构建一个简单的RCP应用。这通常涉及到以下几个步骤: 1. 创建视图:通过继承ViewPart并实现其方法来创建自定义视图,如绘制图形或显示数据。 2. 创建编辑器:通过实现IEditorPart接口,...
通过理解并利用RCP中的视图和编辑器,开发者可以创建出具有高度定制化界面的程序,同时避免了大量界面设计和实现的工作。结合RCP提供的各种顾问类(Advisor),开发者可以精细控制应用程序的界面和行为,从而打造出...
**2.1 创建一个RCP程序** - **步骤**: - 打开Eclipse IDE。 - 选择“File”>“New”>“Other”。 - 在弹出窗口中找到“Eclipse Plug-in Project”,然后点击“Next”。 - 输入项目名称并完成其他设置。 - 选中...
Eclipse RCP(Rich Client Platform)是Eclipse框架下的一个应用程序开发平台,它允许开发者创建桌面应用程序。在Eclipse RCP客户端中与MySQL数据库进行连接是常见的需求,这涉及到Java数据库连接(JDBC)和Eclipse...
- **Eclipse IDE**:一个全面的集成开发环境,内置了许多用于Java和其他语言开发的功能。 - **Eclipse RCP**:专注于为桌面应用程序提供基础架构支持,更侧重于构建自定义界面和功能。 ##### 2.2 插件、OSGi 和扩展...
Workbench是RCP应用的中心,它是一个工作台,包含了UI元素如窗口、图标、按钮和控件,用户的所有操作都在这个工作台上进行。Workbench对象可以通过`PlatformUI.getWorkbench()`获取。工作台提供了`restart()`和`...
首先,Eclipse RCP的核心是插件架构,这种架构允许开发人员将功能模块化,每个模块作为一个独立的插件存在,这样可以实现功能的灵活组合和扩展。在源代码中,我们可以看到各个功能模块对应的插件项目,例如`...
标题 "spring rcp" 暗示我们要讨论的是Spring Rich Client(Spring RCP)平台,这是一个基于Spring框架的桌面应用程序开发平台。Spring RCP提供了一种利用Spring的强大功能来构建可扩展、模块化的桌面应用的方法。 ...
Eclipse RCP(Rich Client Platform)是Eclipse IDE的一个核心组件,它提供了一个用于构建复杂桌面应用的框架。RCP应用程序通常由多个组件构成,如视图(Views)、编辑器(Editors)、透视图(Perspectives)等,...