我在JAVAFX开发应用程序。主要是,该应用程序使用TabPane
控制器。在第一个标签中,我正在加载StackPane
的控制器。在StackPane
我默认加载一个包含自定义单元格的列表视图。在每个单元格中我都有一些按钮。我想在堆栈窗格中添加一个新窗格,并在单击按钮时将其置于前面。
我尝试使用toFront()
和toBack()
,但我无法正常工作。
我检查了,两个窗格都已加载,其内容是正确的。
我无法附上照片,因为我没有足够的代表。
任何建议都表示赞赏。
答案 0 :(得分:2)
很难确切地知道出现了什么问题,因为你没有发布任何代码,而是来自StackPane
Javadocs:
孩子的z顺序由孩子的顺序定义 列表中第0个孩子是最底层,最后一个孩子在最上面。如果一个 边界和/或填充已经设定,孩子们将被铺设 在这些内容中。
所以要将Node
移到前面,你应该把它移到列表的末尾:
StackPane stackPane = ... ;
Node node = ... ;
// move node to front:
// remove node from current location in child list"
stackPane.getChildren().remove(node);
// add node back in at end of child list:
stackPane.getChildren().add(node);