Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/347.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java E4 RCP应用程序不';不要在双击事件时响应_Java_Swt_Rcp_E4 - Fatal编程技术网

Java E4 RCP应用程序不';不要在双击事件时响应

Java E4 RCP应用程序不';不要在双击事件时响应,java,swt,rcp,e4,Java,Swt,Rcp,E4,我在E4 RCP应用程序上工作,我想让它在用户双击特定文件类型时正确响应。到目前为止,文件的扩展名通过写入寄存器与操作系统相关联,当双击它时,应用程序启动。我面临的问题是,当我双击该文件时,应用程序不知道如何处理该文件,它会启动,但不会从该文件加载数据。如果你能建议我怎么做,我将非常感谢你的帮助。我想我需要一个倾听者,但我不知道在哪里。 提前感谢。e4应用程序在打开文件时不会做任何事情,除非您编写一些代码让它这样做 您可以插入iaapplicationcontext,以获取有关程序的命令行参数的

我在E4 RCP应用程序上工作,我想让它在用户双击特定文件类型时正确响应。到目前为止,文件的扩展名通过写入寄存器与操作系统相关联,当双击它时,应用程序启动。我面临的问题是,当我双击该文件时,应用程序不知道如何处理该文件,它会启动,但不会从该文件加载数据。如果你能建议我怎么做,我将非常感谢你的帮助。我想我需要一个倾听者,但我不知道在哪里。
提前感谢。

e4应用程序在打开文件时不会做任何事情,除非您编写一些代码让它这样做

您可以插入
iaapplicationcontext
,以获取有关程序的命令行参数的信息:

final String [] args = (String [])applicationContext.getArguments().get(IApplicationContext.APPLICATION_ARGS);
参数将包括要打开的文件的名称

如果要执行打开MPart之类的操作,则需要通过订阅事件代理中的事件来等待应用程序启动完成事件:

eventBroker.subscribe(UIEvents.UILifeCycle.APP_STARTUP_COMPLETE, handler);
您可以在生命周期类的
@PostContextCreate
create方法中进行设置