0
我剛開始學習JAVAFX,現在我遇到了問題。我有一個登錄屏幕,當我點擊登錄後,出現一個對話框,問題是我不知道如何消除對話框顯示後的登錄屏幕。請幫幫我。這是我的代碼顯示新場景後消除前一場景
Main.java(包含登錄屏幕)
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception{
Parent root = FXMLLoader.load(getClass().getResource("../view/LoginScreen.fxml"));
primaryStage.setTitle("Weltes Mart O2 Tank Module");
primaryStage.setScene(new Scene(root));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
LoginController.java(顯示一個對話框)
public class LoginController {
@FXML private Text loginStatusMessage;
@FXML private Button btnLogin;
@FXML public void handleLoginButton(ActionEvent event){
System.out.println("BUTTON PRESSED");
try {
Parent root = FXMLLoader.load(getClass().getResource("../view/LoginSuccessDialog.fxml"));
Stage primaryStage = new Stage();
primaryStage.setScene(new Scene(root));
primaryStage.show();
} catch (Exception e) {
e.printStackTrace();
return;
}
}
}
剛一說明:
假設
Node
字段由裝載機實際注入,您可以使用此代碼關閉Stage
要麼確保做到這一點*後*您展示的新窗口,或者先在應用程序的某個地方調用['Platform.setImplicitExit(false);'](http://docs.oracle.com/javase/8/javafx/api/javafx/application/Platform.html#setImplicitExit-boolean-) 。 –