某些节点不会出现在HBox中

时间:2017-02-28 20:55:56

标签: javafx nodes vbox hbox borderpane

我正在开发一个Yahtzee游戏,只是为了培养我的编程技巧,我似乎无法让所有的标签和单选按钮出现在HBox中。以下是所有相关代码:

public class Main extends Application{

Label diceRoll1 = new Label("1");
Label diceRoll2 = new Label("2");
Label diceRoll3 = new Label("3");
Label diceRoll4 = new Label("4");
Label diceRoll5 = new Label("5");

RadioButton holdRButton1 = new RadioButton("Hold");
RadioButton holdRButton2 = new RadioButton("Hold");
RadioButton holdRButton3 = new RadioButton("Hold");
RadioButton holdRButton4 = new RadioButton("Hold");
RadioButton holdRButton5 = new RadioButton("Hold");

Button rollDice = new Button("Roll!");

Stage window;

public static void main(String[] args) {
    launch(args);
}

@Override
public void start(Stage primaryStage)throws Exception{
    VBox diceRoll1Layout = new VBox(5);
    diceRoll1Layout.getChildren().addAll(diceRoll1, holdRButton1);

    VBox diceRoll2Layout = new VBox(5);
    diceRoll2Layout.getChildren().addAll(diceRoll2, holdRButton2);

    VBox diceRoll3Layout = new VBox(5);
    diceRoll3Layout.getChildren().addAll(diceRoll3, holdRButton3);

    VBox diceRoll4Layout = new VBox(5);
    diceRoll4Layout.getChildren().addAll(diceRoll4, holdRButton4);

    VBox diceRoll5Layout = new VBox(5);
    diceRoll5Layout.getChildren().addAll(diceRoll5, holdRButton5);

    HBox diceRolls = new HBox(5);
    diceRolls.getChildren().addAll(diceRoll1Layout,diceRoll2Layout,diceRoll3Layout,
            diceRoll4Layout,diceRoll5Layout, rollDice);

    BorderPane rootPane = new BorderPane();
    rootPane.setBottom(diceRolls);

    Scene scene = new Scene(rootPane, 400, 500);
    window = primaryStage;
    window.setTitle("Yahtzee!");
    window.setScene(scene);
    window.show();

}
}

但由于某些原因,每当我运行代码时,只有diceRoll1,diceRoll2,holdRButton1,holdRButton2和rollDice出现在窗口中。它们都编码相同,所以我不知道为什么它们都不会出现。我尝试将它们设置为可见,但没有任何区别。我错过了什么吗?

0 个答案:

没有答案