我正在试着设置一个场景的背景。我想要的背景是一个叫 stars
. 我的场景包含一个vbox,其中包含一个标签和两个按钮。当我将组添加到场景中时,vbox被移动,一些对象被切断。我需要一种方法将组添加到场景中,而不将其添加到vbox中。我尝试过将vbox和组添加到另一个组中,但程序根本不运行。
我定义了要设置为背景的对象:
public static void background()
{
Group stars = new Group();
starsLink = stars;
for (int starInt = 0; starInt < 480; starInt++)
{
Circle star = new Circle(Math.random() * 1024, Math.random() * 600, 1, Color.web("white", 1));
stars.getChildren().add(star);
}
}
我将对象添加到vbox中,并将舞台场景设置为:
VBox helpVBox = new VBox();
helpVBox.getChildren().addAll(plotLabel, controlsLabel, instructionsLabel, menuButton);
helpVBox.setAlignment(Pos.CENTER);
helpVBox.setSpacing(10);
Scene helpScene = new Scene(helpVBox);
helpScene.getStylesheets().add(stellarClass.class.getResource("/CSS/style.css").toExternalForm());
helpSceneLink = helpScene;
1条答案
按热度按时间wwodge7n1#
我建议这样做:
阶段
--场景
----根(stackpane或类似的东西)
-------你的背景小组
-------你的前景(你的vbox和内容)
确保在backgroundgroup后面添加vbox或调用vbox.tofront(),否则背景将覆盖视图:p