在eclipse RCP中打开文件

    希望在eclipse RCP产品中提供pdf文件作为帮助文档,也就是在菜单帮助中提供一个打开pdf帮助文件的功能。可以如下完成:

1、首先在帮助菜单中开辟空间

    打开ApplicationActionBarAdvisor.java文件,为菜单函数修改如下:

protected void fillMenuBar(IMenuManager menuBar) {

        MenuManager helpMenu = new MenuManager("&Help", IWorkbenchActionConstants.M_HELP);
        
        menuBar.add(helpMenu);      

        ......

        // Help 
        helpMenu.add(new GroupMarker(IWorkbenchActionConstants.MB_ADDITIONS));
        helpMenu.add(aboutAction);
    }

 

2、在扩展中添加一个Action

    打开plugin.xml,定位到“扩展”页,然后添加扩展:org.eclipse.ui.actionSets,并依此添加actionset和action,并填写相关属性,如图:

在eclipse RCP中打开文件_第1张图片
 注意:其中在写该action的类时,点击左边的class,然后弹出新建类的页面,创建新的类,重载该类的run函数如下:

@Override
public void run(IAction action) {
	// TODO Auto-generated method stub
	//Rcp程序获取程序安装路径
	String path = null;
	Location location = Platform.getInstallLocation();
	if (location != null) {
		URL url = location.getURL();
		path = url.getPath();
	}
			
	//Rcp程序获取程序workspace路径			
	//String workspacepath = Platform.getInstanceLocation().getURL().getPath();
	
	path = path.substring(1);	//路径是以/开头,所以去掉/
	
	//help.pdf 放在产品根目录下
	String filename = path + "help.pdf";
	Program.launch(filename);
}

 

  注意:在actionset页面,一定要记住将visible属性设为true!其默认值没写,这导致我总是看不到新添加的菜单(在帮助菜单的第一个,也就是help/additions),弄了半天,才找到是这个原因!如图:

在eclipse RCP中打开文件_第2张图片
 

3、导出产品,然后将帮助文件help.pdf放在产品的根目录下面,就可以了!

你可能感兴趣的:(java,eclipse,RCP)