Button 场景生成器2 JavaFX2按钮问题

Button 场景生成器2 JavaFX2按钮问题,button,javafx-2,scenebuilder,Button,Javafx 2,Scenebuilder,我觉得我错过了一些简单的东西,但我不确定它是什么。这是我的密码: @FXML private Label label; private Button startGameButton; @FXML private void startGame (ActionEvent event) { label.setText("Ok. Let's begin."); startGameButton.setVisible(false);

我觉得我错过了一些简单的东西,但我不确定它是什么。这是我的密码:

@FXML
    private Label label;
    private Button startGameButton;

    @FXML
    private void startGame (ActionEvent event) {
        label.setText("Ok. Let's begin.");
        startGameButton.setVisible(false);
    }
我在场景生成器中创建了一个按钮,并将其fx:id设置为startGameButton。我只是想让startGameButton在我点击它时消失。我以为这就足够了,但我得到了一个

Caused by: java.lang.NullPointerException
    at myjavafx2.FXMLDocumentController.startGame(FXMLDocumentController.java:29)

我感觉好像NullPointerException告诉我按钮不存在,但我是在场景生成器中创建的。我想我不需要做
Button startGameButton=new Button()因为场景生成器应该为我这样做。我遗漏了什么?

您还必须在
按钮之前添加
@FXML

像这样:

@FXML
private Label label;
@FXML
private Button startGameButton;

@FXML
private void startGame (ActionEvent event) {
    label.setText("Ok. Let's begin.");
    startGameButton.setVisible(false);
}

如果您使用的是NetBeans,那么使用make controller选项来创建控制器文件。它将处理所有FXML注入和注释。完美。非常感谢。我认为这就像Objective-C,变量只需要一个“标题”。在startgame按钮上方添加@FXML之后,它工作得非常好。