我正在开发一个 Eclipse RCP 应用程序来对图形进行可视化建模。为此,我正在使用GEF4 Zest JFace库(或捆绑包)。使用的策略涵盖了许多必要的功能,但我需要添加一个额外的视觉元素:带有图形名称和简短描述的 VBox(或面板)。这不是一个图形节点,所以我把它放在了 ZestContentViewer 的 Canvas Overlay Group 中。
final Group canvasOverlay = ui.getGraphViewer().getFXViewer().getCanvas().getOverlayGroup();
canvasOverlay.getChildren().add(metaPanel);
该方法ui.getGraphViewer
返回 ZestContentViewer,它metaPanel
是包含 javafx TextFields 的 VBox。
一切正常,直到我在 TextFields 中写了一些东西。当我按下其中一个箭头键时,包含画布的滚动窗格也会被触发(滚动)。同样,当我拖动 metaPanel 时,也会启动一个矩形选择。有没有办法来解决这个问题?我不确定这是放置组件的正确位置,但我没有任何其他想法。