2012-09-17 31 views
2

的JavaFX primaryStage.close()我目前有一些代码在primaryStage中生成一个按钮,这个按钮产生了一个新阶段。我的目标是在启动新按钮后立即使用setOnMouseClicked方法关闭舞台。以下是它如何设置:来自方法

@Override 
public void start(Stage primaryStage) { 

    setPlayBtn(); 

} 

private void setPlayBtn() { 
    play = new ImageView(new Image(BugWars.class.getResourceAsStream("images/play-btn.png"))); 
    play.setFitHeight(50); 
    play.setFitWidth(50); 
    play.setX(375); 
    play.setY(375); 
    play.setOnMouseClicked(new EventHandler<MouseEvent>() { 

     @Override 
     public void handle(MouseEvent t) { 
      setGame(); // This creates the new stage. 
      primaryStage.close(); 

     } 
    }); 

不幸的是,这是行不通的。 Netbeans抱怨说找不到符号。它认为这是一个变量。我相信这是愚蠢的,但任何帮助primaryStage将不胜感激。多谢你们!

回答

1

所以我已经通过只是在说,(我相信)创建primaryStage,然后使primaryStagefinalstart()方法内的PlayBtn instatiate解决该问题的工作。我不知道这是为什么起作用,但确实如此。