javafx启动第二个窗体

我的梦境 提交于 2020-08-11 01:04:29

 特别要注意第二窗体对应的view的fxml文件路径写法(view和controller都放在各自的包下):

@FXML
    protected  void show2Action() throws IOException {
        Stage stage = new Stage();
        stage.setTitle("第二个窗体实验");
        AnchorPane pane = FXMLLoader.load(getClass().getResource("../javafxcontroller2.fxml"));//要注意fxml文件的类路径写法(与本JavaFXController.java的相对关系)
        Scene scene = new Scene(pane,300,400);
        stage.setScene(scene);
        stage.initModality(Modality.APPLICATION_MODAL);//模式窗体
        stage.setOnCloseRequest(new EventHandler<WindowEvent>() {

            @Override
            public void handle(WindowEvent event) {

                System.out.println("window close event");
                if(i++<2){
                    event.consume();
//                    i=0;
                }
                else
                    i=0;
            }
        });
        stage.show();
//        stage.showAndWait(); //等待stage关闭之后才能继续运行
        System.out.println("stage.showAndWait");
//        stage.show();
    }

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!