【发布时间】:2016-07-29 15:11:24
【问题描述】:
我目前正在为 IBM Rational Rhapsody 创建一个插件。对于本次讨论,了解该工具并不是真正必要的,但我想提一下以防万一。 基本上我在 Eclipse 中编写了 Java 代码,然后通过一个 Jar 运行它以导入 Rhapsody。
插件可能需要用户交互才能运行:例如,插件可能正在创建模型的一个元素,但不知道将其放入哪个数据包中,因此它会提示用户输入指令。 为此,我创建了一个调用 setModal(true) 方法的 JDialog 类;如您所知,这确保创建对话框的线程停止运行,直到用户提供输入。 在 Eclipse 上,这一切都运行良好,但是当 jar 在 Rhapsody 上运行时,它并没有达到我的预期。除了在提供输入之前停止插件运行之外,它还会停止 Rhapsody 应用程序并导致 UML 模型不可用。 更清楚地说,为了让用户知道在哪里插入他们的输入,他们必须能够使用和分析 UML 模型。我想要实现的是我的对话框只停止插件运行,而不是整个模型。
我没有写一行代码,因为这是一个概念问题:我怎样才能使一个在工具外部的插件在线程上运行,允许在插件运行时使用该工具?
我希望我的问题很清楚,我很难解释这个问题。
感谢大家的帮助, 佐丹奴
【问题讨论】:
标签: java swing modal-dialog jdialog rhapsody