带有 StackPane 和自定义控件的 Javafx TabPane
Posted
技术标签:
【中文标题】带有 StackPane 和自定义控件的 Javafx TabPane【英文标题】:Javafx TabPane with StackPane and custom Controls 【发布时间】:2014-12-29 21:42:51 【问题描述】:我正在用 JAVAFX 开发一个应用程序。主要是,该应用程序使用TabPane
控制器。在第一个选项卡中,我正在为StackPane
加载控制器。在StackPane
中,我默认加载一个带有自定义单元格的列表视图。在每个单元格中,我都有一些按钮。我想在堆栈窗格中添加一个新窗格,并在单击按钮时将其置于前面。
我尝试了toFront()
和toBack()
,但我什么都做不了。
我已经检查过了,两个窗格都已加载,并且它们的内容是正确的。
我无法附上照片,因为我没有足够的代表。
欢迎提出任何建议。
【问题讨论】:
你现在有足够的代表来发布你的照片,或者你可以上传它们并在到达那里时分享链接。还可以考虑添加mcve。我怀疑James_D answer 是正确的,但很难从缺乏提供的材料中推断出来。 【参考方案1】:很难确切知道出了什么问题,因为您没有发布任何代码,而是来自StackPane
Javadocs:
孩子的z-order由孩子的顺序定义 列表,第 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);
【讨论】:
以上是关于带有 StackPane 和自定义控件的 Javafx TabPane的主要内容,如果未能解决你的问题,请参考以下文章