我正在eclipse中开发一个插件,它可以生成一个文本文件(基于用户输入)并可以触发一个perl脚本。我可以轻松地创建一个简单的插件(如Hello World),我可以添加新的菜单和命令。我理解这些事情是如何相互关联的,但我遇到的地方是用户输入。
如何让用户输入他的选择?我的意思是我应该用什么扩展点来问他?我找不到任何可以要求用户输入数据的内容。一旦我可以让他输入所需信息,我就可以轻松访问该信息以继续进行。
PLZ。注意:这是我第一次进入在线社区,所以我试图在我的描述中尽可能彻底。我是eclipse的新手,对Java有非常基本的了解。我在Mark Dexter的网上学习了一些Java课程。我对C ++有着扎实的理解和工作经验。
答案 0 :(得分:2)
继续我上面的评论(抱歉,无法符合600个字符的评论限制,所以我将其添加为您问题的可能答案) - 快速搜索引导我这样做 - {{3 }}。您可以使用操作轻松添加由插件处理的工具栏按钮,菜单项等。简而言之,这就是您将功能插入工作台的方式。我建议查看上面的链接以获得更好的理解。至于收集输入,你可以使用JFace对话框(http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse% 2Fjface%2Fdialogs%2FDialog.html)。有许多预先设定的对话框,您可能会发现它们很有用,因此我建议您进行更多研究,以了解哪些内容最适合您的用例。祝你好运!
答案 1 :(得分:1)
启动Eclipse插件开发可能有点压倒性。
排序答案: 我假设您已使用“hello,world命令”模板创建了一个新的插件项目。如果没有,你可以很容易地做到。它将帮助您入门。在这个示例项目中,eclipse为您创建了一个简单的菜单贡献。我不打算详细介绍,但实际上,您创建了一个命令(org.eclipse.ui.commands)并将其与工作台中的某个位置相关联,如菜单或工具栏图标(org.eclipse.ui.menus) )。然后你需要创建一些能够处理这个命令的东西,就像它执行时一样(用户点击菜单)。这是由处理程序(org.eclipse.ui.handlers)完成的,处理程序是您希望代码进入的时间。
代码:
public Object execute(ExecutionEvent event) throws ExecutionException {
InputDialog dlg = new InputDialog(
HandlerUtil.getActiveShellChecked(event), "Title",
"Enter text", "Initial value", null);
if (dlg.open() == Window.OK) {
// User clicked OK; run perl
String input = dlg.getValue();
// TODO:do something with value
}
return null;
}
不要求用户输入您需要显示对话框的输入。我建议你阅读这个很好的教程:http://www.vogella.de/articles/EclipseDialogs/article.html,它详细描述了这一点。
长期的答案是查看http://www.vogella.de/articles/EclipsePlugIn/article.html和http://www.vogella.de/articles/EclipseCommands/article.html以查看Eclipse RPC和命令背后的基础知识。
最后,您还需要查看http://www.vogella.de/articles/EclipseJobs/article.html以了解如何运行更长的任务,例如您正在谈论的perl脚本。
答案 2 :(得分:0)
Eclipse中没有用于输入用户信息的扩展点。为此,您通常使用对话框或视图,具体取决于具体的用例。