2017-06-21 5 views
0

Betrachten entfernen:JavaFx Dialog folgenden Code Bodenraum

public class Main extends Application { 
    public static void main(String[] args) throws Exception { 
     launch(args); 
    } 

    @Override 
    public void start(Stage stage) throws Exception { 
     final BorderPane p = new BorderPane(); 

     final Dialog dialog = new Dialog() { { 
      getDialogPane().setContent(new Button("TEXT")); 
     } }; 

     final Button bt = new Button("LAUNCH"); 
     bt.setOnAction(e -> dialog.show()); 

     p.setCenter(bt); 

     stage.setScene(new Scene(p)); 

     stage.show(); 
    } 
} 

Ergebnis ist:

enter image description here

-Code vereinfachtes Beispiel ist.

Problem ist mit dem zusätzlichen Platz an der Unterseite. Gibt es eine Möglichkeit, es zu entfernen? Vielen Dank.

Antwort

1

Sie können dies tun:

@Override 
public void start(Stage stage) 
{ 
    final BorderPane p = new BorderPane(); 

    Stage dialog = new Stage(); 
    dialog.initModality(Modality.APPLICATION_MODAL); 
    dialog.setScene(new Scene(new Button("TEXT")));    

    final Button bt = new Button("LAUNCH"); 
    bt.setOnAction(e -> dialog.show()); 

    p.setCenter(bt); 

    stage.setScene(new Scene(p)); 

    stage.show(); 
} 

enter image description here

+1

Das andere Symbol in der Taskleiste angezeigt wird. Stage! = Dialog – Mordechai

+0

Ja, das funktioniert! Vielen Dank! Ich habe versucht, Grund für ein solches Verhalten vor der Beantwortung zu finden, aber es ist nicht gelungen. Bottom Space verschwindet, wenn wir initStyle (StageStyle.UNDECORATED) verwenden, aber wir verlieren auch den Frame! – Dmitry