Javafx:未显示实例标签

时间:2016-01-02 20:26:48

标签: java javafx

我是Javafx(和Java)的新手。

我正在尝试向不同的场景显示标题“标题”。因此这个标签在一个实例变量中。我使用方法title()创建它。

问题是标题没有出现在我的场景中。我试图在类级别,或在start()内部或在scene1()内部初始化它。什么都行不通,但是当我在scene1()方法中创建一个本地标签时。

提前感谢您的帮助。

ps:如果需要,请填写repo here

private Label title;

public void start(Stage primaryStage) {
    title();
    scene1();
    scene2();
    [some more code...]
}

public Node title() {
    title = new Label();
    title.setText("SNAKE");
    title.setTextFill(Color.YELLOW);
    title.setFont(Font.font(STYLESHEET_MODENA, FontWeight.BOLD, 80));
    return title;
}

public Scene scene1() {
    Label lbl1scene1 = new Label("Welcome to Game !"); 
    Label lbl2scene1 = new Label("Click to start the game");
    Button btnStart = new Button("Start the game now!");
    btnStart.setOnAction(e -> {
        runGame();
    });
    VBox vbox1 = new VBox(title, lbl1scene1, lbl2scene1, btnStart);
    vbox1.setAlignment(Pos.CENTER);
    vbox1.setSpacing(10);
    scene1 = new Scene(vbox1, width, height);
    return scene1;
}

1 个答案:

答案 0 :(得分:0)

  

我正在尝试显示标签" title"到不同的场景。

请注意,一个节点只能有一个父节点。

使用局部变量而不是标题成员字段创建多个实例。