2012-09-05 11 views
7

Guten Tag!JavaFx 2.2 & Fullscreen-Modus

Ich versuche meine erste Anwendung JavaFx. Ich stelle den Vollbildmodus ein und drücke die Taste, um einen Dialog anzuzeigen. Wenn der Dialog erscheint, verliert das Hauptfenster seinen Vollbildmodus.

Code:

public class Test1 extends Application { 

    @Override 
    public void start(final Stage primaryStage) { 
     Button btn = new Button(); 
     btn.setText("Say 'Hello World'"); 
     btn.setOnAction(new EventHandler<ActionEvent>() { 
      @Override 
      public void handle(ActionEvent event) { 
       Stage dialogStage = new Stage(StageStyle.UTILITY); 
       dialogStage.initModality(Modality.APPLICATION_MODAL); 
       dialogStage.setScene(new Scene(VBoxBuilder.create(). 
        children(new Text("Hi"), new Button("Ok.")). 
        alignment(Pos.CENTER).padding(new Insets(5)).build())); 
       dialogStage.show(); 

       System.out.println(dialogStage.getOwner()==primaryStage.getOwner()); 
      } 
     }); 

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

     Rectangle2D r = Screen.getPrimary().getBounds(); 
     Scene scene = new Scene(root, r.getWidth(), r.getHeight()); 

     primaryStage.setTitle("Hello World!"); 
     primaryStage.setScene(scene); 
     primaryStage.setFullScreen(true); 
     primaryStage.show(); 
    } 

    public static void main(String[] args) { 
     launch(args); 
    } 
} 

OS: Windows 7

Antwort

6

Sie müssen

dialogStage.initOwner(primaryStage); 
+0

Es Arbeit. Danke vielmals. – Alexander

+0

Mein Bildschirm blinkt, wenn der Dialog geöffnet wird. Wie löst man dieses Problem? – zella

+0

@DarkDarker, es scheint ein Fehler zu sein, oder "von Design" erwartet. Wie auch immer, Sie können dieses Problem bei JavaFX Jira Tracker suchen und wenn es keinen Eintrag wie diesen gibt, kann er es ablegen. –