---------------------------------------------------------------------------------------------------
学习: http://www.blogjava.net/youxia/archive/2006/11/28/84013.html
---------------------------------------------------------------------------------------------------
1. 新建 OleView:
package hellorcp.ole;
import org.eclipse.jface.action.IMenuManager;
import org.eclipse.jface.action.IToolBarManager;
import org.eclipse.swt.SWT;
import org.eclipse.swt.ole.win32.OleFrame;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.part.ViewPart;
public class OleView extends ViewPart {
public OleFrame frame;
public static final String ID = "hellorcp.view.OleView"; //$NON-NLS-1$
/**
* Create contents of the view part
*
* @param parent
*/
@Override
public void createPartControl(Composite parent) {
// 创建OleFrame对象
frame = new OleFrame(parent, SWT.NONE);
//
createActions();
initializeToolBar();
initializeMenu();
}
/**
* Create the actions
*/
private void createActions() {
// Create the actions
}
/**
* Initialize the toolbar
*/
private void initializeToolBar() {
IToolBarManager toolbarManager = getViewSite().getActionBars()
.getToolBarManager();
}
/**
* Initialize the menu
*/
private void initializeMenu() {
IMenuManager menuManager = getViewSite().getActionBars()
.getMenuManager();
}
@Override
public void setFocus() {
// Set the focus
}
}
2. 新建 OpenFileAction:
package hellorcp.ole;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.viewers.ISelection;
import org.eclipse.swt.SWT;
import org.eclipse.swt.ole.win32.OLE;
import org.eclipse.swt.ole.win32.OleAutomation;
import org.eclipse.swt.ole.win32.OleClientSite;
import org.eclipse.swt.ole.win32.Variant;
import org.eclipse.ui.IViewPart;
import org.eclipse.ui.IViewReference;
import org.eclipse.ui.IWorkbenchWindow;
import org.eclipse.ui.IWorkbenchWindowActionDelegate;
public class OpenFileAction implements IWorkbenchWindowActionDelegate {
IWorkbenchWindow window;
public void dispose() {
// TODO 自动生成方法存根
}
public void init(IWorkbenchWindow window) {
this.window = window;
}
public void run(IAction action) {
IViewReference[] vfs = window.getActivePage().getViewReferences();
IViewPart vw;
for (int i = 0; i < vfs.length; i++) {
vw = vfs[i].getView(false);
if (vw.getTitle().equals("使用Active X控件")) {
OleClientSite client = new OleClientSite(((OleView) vw).frame,
SWT.NONE, "Shell.Explorer.2");
client.doVerb(OLE.OLEIVERB_SHOW);
OleAutomation oa = new OleAutomation(client);
Variant str = new Variant("http://www.iteye.com/");
oa.invoke(104, new Variant[] { str });
}
}
}
public void selectionChanged(IAction action, ISelection selection) {
// TODO 自动生成方法存根
}
}
3. 修改 Perspective.java, 修改后:
package hellorcp;
import org.eclipse.ui.IPageLayout;
import org.eclipse.ui.IPerspectiveFactory;
public class Perspective implements IPerspectiveFactory {
public void createInitialLayout(IPageLayout layout) {
// FirstView
String editorArea = layout.getEditorArea();
// layout.addView("hellorcp.view.FirstView", IPageLayout.RIGHT, 0.2f,
// editorArea);
// SecondView
// layout.setEditorAreaVisible(false);
// layout.addView("hellorcp.view.SecondView", IPageLayout.RIGHT, 0.5f,
// editorArea);
// OleView
layout.addView("hellorcp.ole.OleView", IPageLayout.RIGHT, 0.5f,
editorArea);
}
}
4. 配置 plugin.xml:
1) action 配置片段:
<action
class ="hellorcp.ole.OpenFileAction"
icon ="icons/alt_window_16.gif"
id ="hellorcp.ole.OpenFileAction"
label ="Ole菜单项"
menubarPath ="hellorcp.firstmenu/additions"
style ="push"
toolbarPath ="additions"
tooltip ="Ole菜单项" />
2) view 配置片段:
<view
class="hellorcp.ole.OleView"
id="hellorcp.ole.OleView"
name="使用Active X控件" />
5. 保存,运行(点击工具类第1个图标),效果如下:
- 大小: 68.6 KB
分享到:
相关推荐
eclipse RCP(Rich Client Platform)是一种基于eclipse的插件式开发平台,允许开发者使用eclipse结构风格设计弹性的可扩展的应用程序。RCP插件式开发方式可以重用eclipse中的方法和编码模式,提高开发效率和代码...
在提供的压缩包中,包含了关于Eclipse RCP插件开发15至24章的学习笔记,这些章节覆盖了多个关键主题,下面将对这些主题进行详细解读。 1. **第15章:对话框和向导(Dialogs and Wizards)** - 在Eclipse RCP中,...
以下是对Eclipse RCP插件开发学习笔记1-14章的详细知识点解析: 1. **第1章 Eclipse平台简介**: - Eclipse平台是基于OSGi(Open Service Gateway Initiative)标准的,提供了插件模型,使得开发者可以构建、运行...
"使用Eclipse RCP进行桌面程序开发(四):在Windows中使用Active X控件 .doc"针对Windows平台,介绍了如何集成ActiveX控件到RCP应用中,使开发者可以利用这些现成的组件扩展应用程序的功能。 "使用Eclipse RCP进行...
Eclipse RCP 允许开发者使用 eclipse结构风格设计弹性的可扩展的应用程序,可重用Eclipse中 已存在的方法和编码模式。俗话说,万事开头难。Eclipse RCP 入手可能会比较困难、费时。接下 来我们将主要讲述如何让RCP ...
在"eclipse rcp应用系统开发方法与实战源代码.zip"中,我们可以学习到以下关键知识点: 1. **Eclipse RCP架构**:理解Eclipse RCP的基础架构非常重要,包括插件(Plugins)、工作台(Workbench)、视图(Views)、...
总的来说,《ECLIPSE RCP应用系统开发方法与实战》是一本全面覆盖Eclipse RCP开发的指南,涵盖了从基础到高级的主题,对于希望在桌面应用程序开发领域使用Eclipse RCP的人来说,是一份宝贵的资源。通过深入学习这...
在Eclipse RCP(Rich Client Platform)开发中,创建自定义的新建项目向导是提升用户体验和增强应用程序功能的重要步骤。`rcp自己通过扩展点新建java项目`这个主题涉及了如何利用Eclipse的插件体系和扩展点机制来...
### Eclipse RCP 开发入门详解 #### 一、Eclipse RCP 概述 Eclipse Rich Client Platform (RCP) 是一种基于Java的框架和技术集合,用于构建具有丰富用户体验的应用程序。Eclipse RCP 提供了一种灵活的方式来构建...
在本文中,我们将深入探讨Eclipse RCP、JFace和SWT,以及如何使用这个压缩包进行开发工作。 Eclipse RCP允许开发者使用面向服务的架构来创建功能丰富的桌面应用程序。它基于Eclipse IDE,提供了丰富的插件系统和可...
这本书《Eclipse RCP系统开发与实战》显然是针对想要学习和掌握Eclipse RCP技术的程序员,通过实战案例帮助读者深入理解Eclipse RCP的开发过程。 1. **Eclipse RCP基础知识** - Eclipse RCP是一种基于Java的开发...
### Eclipse RCP 入门详解 #### 一、Eclipse RCP 概述 **Eclipse RCP**(Rich Client Platform)是一种构建丰富客户端应用程序的框架,它利用Eclipse平台的强大功能来创建高度定制化的桌面应用程序。通过RCP,...
Eclipse是一款广泛使用的开源集成开发环境(IDE),尤其在Java开发者中非常流行。Eclipse插件开发是扩展其功能和定制工作环境的关键技术。...在学习过程中,建议动手实践,逐步积累经验,成为Eclipse插件开发的专家。
要在Eclipse RCP项目中使用这个语言包,首先需要将其导入到Eclipse环境中。然后,在项目的插件配置中,引用该语言包作为依赖,这样在运行时,Eclipse会自动加载并显示中文界面。对于开发插件,还需要确保插件的本地...
Eclipse RCP 开发资料打包下载 目录如下: RCP程序设计.pdf(推荐) Addison.Wesley.Eclipse.Rich.Client.Platform.Designing.Coding.and.Packaging.Java.Applications.Oct.2005.chm Eclipse+RCP入门.pdf example_...
### 通过例子学习Eclipse RCP开发 #### Eclipse RCP概览 Eclipse RCP(Rich Client Platform,富客户端平台)是一种基于Java的框架和技术集合,用于构建具有丰富用户界面的应用程序。它允许开发者创建高度可定制且...
网络中最全面最合适学习或开发的相关资料全面都有; 包含eclipse rcp开发入门教程; eclipse rcp基础教程;eclipse rcp开发自学教程; eclipse rcp开发培训教程及ppt等相关资料;教程中包含一步步操作实例,包含对...
通过本文的学习,我们不仅了解了Eclipse RCP插件开发的基本过程,还掌握了不同的运行模式及其应用场景。无论是对于初学者还是有一定经验的开发者来说,掌握这些知识都将对实际工作大有裨益。希望本文能够帮助大家更...
### Eclipse RCP 入门示例介绍 #### 一、Eclipse 概述 Eclipse 是一款由 IBM 开发并贡献给开源社区的集成开发环境(Integrated Development Environment, IDE),自发布以来,迅速成为了最受欢迎的 Java 开发工具...