Change scene in full screen JavaFX

19,691

A full runnable testable code could be helpful. Also provide your system environment details. I have tested your code below (try yourself) which works on my windows 7 64 bit with JavaFX version 2.2.0.
(I will update my answer as you provide more details and lastly welcome to stackoverflow!)

Update: Ok I guess your primary stage was in full screen mode initially. In that case you need to toggle full screen mode. See below.

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.scene.layout.VBoxBuilder;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class Test extends Application {
    private Stage primaryStage;

    @Override
    public void start(Stage primaryStage) {
        this.primaryStage = primaryStage;
        this.primaryStage.setFullScreen(true);
        Button btn = new Button("Login");
        btn.setOnAction(loginClienteHandler());

        StackPane root = new StackPane();
        root.getChildren().add(btn);

        Scene scene = new Scene(root, 300, 250);

        primaryStage.setTitle("JavaFX version: " + com.sun.javafx.runtime.VersionInfo.getRuntimeVersion());
        primaryStage.setScene(scene);
        primaryStage.show();
    }

    public EventHandler loginClienteHandler() {
        EventHandler evh = new EventHandler<ActionEvent>() {
            @Override
            public void handle(ActionEvent event) {
                primaryStage.setScene(new Scene(VBoxBuilder.create().children(new Text("text")).build()));
                primaryStage.sizeToScene();
                primaryStage.setFullScreen(false);
                primaryStage.setFullScreen(true);
            }
        };
        return evh;
    }

    public static void main(String[] args) {
        launch(args);
    }
}
Share:
19,691

Related videos on Youtube

cefeboru
Author by

cefeboru

Software Developer @ PartnerHero

Updated on September 16, 2022

Comments

  • cefeboru
    cefeboru over 1 year

    I'm new to JavaFX. I have my main and secondary scenes; when I change from the first scene to the second one, the window's bar becomes visible. How can I fix that?

    Here is my code

    public class ProyectoTeoriaBD1 extends Application {
    
    Stage primaryStage;
    
    public static void main(String[] args) {
        launch(args);
    }
    
    @Override
    public void start(final Stage primaryStage) {
    
        this.primaryStage = primaryStage;
        GridPane gp = new GridPane();
        gp.setHgap(10);
        gp.setVgap(10);
        gp.setPadding(new Insets(25,25,25,25));
    
        Scene firstScene = new Scene(gp);
        Button b = new Button("Change Scene");        
        gp.add(b,1,1);
        primaryStage.setScene(firstScene);
         primaryStage.setFullScreen(true);
        primaryStage.show();
    
    
    
       b.setOnAction(new EventHandler<ActionEvent>() {
    
            @Override
            public void handle(ActionEvent event) {
               GridPane gp = new GridPane();
               Scene secondScene = new Scene(gp);
               Text txtSecond = new Text("Second Scene");
               gp.add(txtSecond, 1, 1);
               primaryStage.setScene(secondScene);
               primaryStage.setFullScreen(false);
               primaryStage.setFullScreen(true);
    
            }
        });
    
    
    }
    

    }

  • cefeboru
    cefeboru over 11 years
    thanks for replying, now i have edite my question so you can see what i hav done,i did what u said but it doesnt seems to work :(
  • Uluk Biy
    Uluk Biy over 11 years
    @user1667217. The same code worked for me. I mean the windows bar still stays invisible. Is it also correct for you? Which version of JavafX are you using? Check it by System.out.println(com.sun.javafx.runtime.VersionInfo.getRun‌​timeVersion());
  • cefeboru
    cefeboru over 11 years
    it looks like my version is 2.1.0-b21, but i already figured it out how to make it, i just had to change the root thank for your time and help :D
  • Xdg
    Xdg almost 11 years
    Toggle fullscreen works, but there is "Press ESC to exit fullscreen" message shown. And this message cannot be disabled:(