【问题标题】:JavaFx StackPane in SceneBuilder, how to make only front pane visible without setting disabling visibility of others?SceneBuilder中的JavaFx StackPane,如何在不设置禁用其他人可见性的情况下仅使前窗格可见?
【发布时间】:2015-06-18 04:37:28
【问题描述】:

相关问题:Nodes - Choose the Layer to appear JavaFX2

我将 JavaFx 8 与 SceneBuilder 2 结合使用。我有许多窗格作为 StackPane 的子项,我希望仅显示前面的节点。我需要在不禁用其他孩子的可见性的情况下执行此操作,并且我尝试使用下面看到的不透明度设置来执行此操作(忽略可见性被禁用的事实):

在不禁用其他子节点的可见性的情况下,即使使用不同的混合模式(SRC_OVER 和 SRC_ATOP),子节点也会始终相互叠加,如下所示:

我想避免将子元素的可见性设置为 false 的原因是我想为窗格之间的过渡设置动画,其中一个窗格需要绘制在另一个窗格的顶部。

我一定遗漏了一些明显的东西,但我看不到它是什么?

【问题讨论】:

  • 您可以在窗格中添加background color,这会阻止其他窗格的可见性。此外,设置可见性听起来也不是一个糟糕的选择。您可以在过渡时随时更改可见性。

标签: java user-interface javafx scenebuilder


【解决方案1】:

答案是设置窗格的背景颜色。如果不先设置背景颜色,不透明度将无效。

【讨论】:

    【解决方案2】:

    您可以尝试将可见性设置为 false。 为此,请在您希望在 StackPane 中呈现不可见的节点上调用 setVisible(false)

    Node::setVisible

    【讨论】:

      猜你喜欢
      • 2011-09-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 1970-01-01
      • 1970-01-01
      • 2020-12-15
      相关资源
      最近更新 更多