几个JavaFx窗口

几个JavaFx窗口

问题描述:

如何运行少数javaFx窗口,如果他们在分离的类?几个JavaFx窗口

例如,像在这种情况下:

public class Main { 
    public static void main(String[] args) { 
     Form1 form1 = new Form1(); 
     Form2 form2 = new Form2(); 

     // run form1 
     // run form2 
    } 

    public static class Form1 extends Application { 
     @Override 
     public void start(Stage primaryStage) throws Exception { 
      Stage stage = new Stage(); 
      stage.setScene(new Scene(new Group(new Button("Window 1")))); 
      stage.show(); 
     } 
    } 

    public static class Form2 extends Application { 
     @Override 
     public void start(Stage primaryStage) throws Exception { 
      Stage stage = new Stage(); 
      stage.setScene(new Scene(new Group(new Button("Window 2")))); 
      stage.show(); 
     } 
    } 
} 

我只需要显示两个窗口的同时,却找不到任何简单的例子。

+1

一个'Application'不是窗口:所述窗口由表示的' Stage'。您应该只有一个应用程序类(以及通过'launch'为您创建的实例):您可以根据需要创建任意数量的“舞台”。 –

+0

您必须创建两个'stages',请查看答案中的示例代码。 –

在JavaFX窗口被认为是这样的阶段创建吨多个窗口,可以考虑使用下面的代码作为一个例子

public class Main extends Application { 

@Override 
public void start(Stage primaryStage) throws Exception{ 
    form1().show(); 
    form2().show(); 
} 


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

private Stage form1(){ 
    Stage stage=new Stage(); 
    stage.setTitle("Window 1"); 
    stage.setScene(new Scene(new Group(new Button("Window 1")))); 
    return stage; 
} 
private Stage form2(){ 
     Stage stage=new Stage(); 
     stage.setTitle("Window 2"); 
     stage.setScene(new Scene(new Group(new Button("Window 2")))); 
     return stage; 
    } 



}