【问题标题】:JavaFX accessing stackpane within borderpaneJavaFX 访问边界窗格内的堆栈窗格
【发布时间】:2015-07-31 22:24:50
【问题描述】:

我的 BorderPane 的中心有一个名为 designView 的堆栈窗格(一个 FXML 定义的堆栈窗格)。我试图在设计视图中获得一个可拖动的窗格。如果我将该窗格添加到 rootView(我的 BordePane),一切都很好。但是,如果我尝试像这样将它添加到 designView:

// This works fine except the pnae is on the wrong place obviously
....
Pane p = displayField.createDraggablePane(800.0, 800.0, 400.0, 300.0);
rootView.getChildren().add(p);


// Now the pane is in the right place, but it's 'stuck'
....
rootView.setCenter(designView);
Pane p = displayField.createDraggablePane(800.0, 800.0, 400.0, 300.0);
designView.getChildren().add(p);

窗格在设计视图中正确显示,但不再可拖动。 MouseEvents 触发,但窗格的位置未更新。我认为问题在于 layoutX、getSceneX、layoutXProperty 等没有对 designView 的引用,但我该如何理解呢?有人可以帮忙吗?

【问题讨论】:

    标签: javafx fxml


    【解决方案1】:

    我找到了解决方案。我没有将 StackPane 添加到我的 BorderPane 中心,而是添加了一个窗格,一切都很好:-) 所以我的可拖动窗格被添加到窗格而不是添加到 StackPane。

    不太明白为什么这会改变可拖动窗格的行为,但实践表明确实如此。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-08-18
      • 2023-04-03
      • 1970-01-01
      • 2017-06-23
      • 1970-01-01
      • 2017-10-21
      • 1970-01-01
      • 2020-05-05
      相关资源
      最近更新 更多