我想要什么:
我在真实系统上有一个带有变量isWorking(boolean)
的传感器。现在我想要一个查看器来显示传感器是否正常工作。例如传感器节点是绿色或红色。
我拥有的:
我在 CoDeSys 上有一个带有变量 isWorking
的 softSPS 程序。使用 JEasyOPC,我可以读取/覆盖这个变量并将其打印到 Eclipse 控制台中。
我还在 eclipse 运行时为我的系统创建了一个 Sirius 模型,如我发现的所有 Sirius 教程所示。我发现我可以使用条件样式更改节点的颜色。
所以我有一个节点 Sensor
和一个变量 isWorking
但我不知道如何连接它们。
我在 Sirius 文档中找到了有关“外部 Java 操作”的内容。 Sirius 论坛中也有一个示例( https://www.eclipse.org/forums/index.php/t/764175/ ),但我不知道它是否适用于我的问题以及如何将 JEasyOPC 与它们一起使用。
我发现的另一种方法是 JFace 数据绑定(bind),但我只找到了一个适用于 EMF 模型而不适用于 Sirius 图的教程 ( http://www.vogella.com/tutorials/EclipseDataBindingEMF/article.html )。我不想更改我的元模型。
最佳答案
我认识 Eclipse 和 Sirius。如果我理解正确,您有一个可用的变量,您希望根据变量值显示具有不同颜色的节点。 为此,您必须忙于等待 [1],这不是最佳实践,最佳实践是使用监听器通知变量值更改。
然后按照您选择的策略,忙于等待(使用循环读取变量的线程)或监听器,您需要更新您的 EMF 模型,以使 Sirius 对您的 EMF 模型更改使用react并更改节点的颜色。
最诚挚的问候。
关于java - Eclipse Sirius 如何与其他系统交互?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25969791/