我有一个 Swing 应用程序,必须将新的 javafx FXML 文件集成到其中。我使用 JFXPanel 打开我的 FXML 表单。退出按钮是在 FXML 表单上创建的。我的控制器类实现了该按钮的事件。但是如何从我的 Swing 应用程序中关闭 Jframe?
我的 JavaFX 控制器类(方法)
@FXML
private void doExit(ActionEvent event) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Stage stage = (Stage) btnExit.getScene().getWindow();
stage.close();
}
});
}
Swing 应用程序开始加载我的 JFXPanel
JFrame frame = new JFrame("");
frame.setLayout(new BorderLayout());
final JFXPanel jfxPanel = new JFXPanel();
frame.add(jfxPanel, BorderLayout.CENTER);
frame.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
frame.setVisible(true);
SwingUtilities.invokeLater(() -> initPrijsMutatieFX(jfxPanel));