gpt4 book ai didi

JavaFX FXML 在 Mac OS 中无法正确加载

转载 作者:行者123 更新时间:2023-12-01 14:56:50 28 4
gpt4 key购买 nike

我在运行 mac 操作系统的项目成员加载 FXML 时遇到问题。我对 java 代码中的整个 JavaFX 加载过程相当陌生,但这就是我目前的代码的设置方式。该类名为 ControlPanel.java,fxml 为 controlPanel.fxml,它包含 onAction# 方法,我使用 ControlPanel.java 作为这些方法的 Controller 。它在 Windows 操作系统上工作得很好,但是当我们尝试在 Eclipse 中运行它时,它会打开但不显示任何内容。只是想知道我是否做错了什么。我在文档的顶层定义了 Controller ,它是一个anchorPane fx:controller="project.fx.ControlPanel"

public static void main(String[] args) {
Application.launch(ControlPanel.class, (java.lang.String[])null);
}

@Override
public void start(Stage primaryStage) {
try {

Parent page = (Parent) FXMLLoader.load(getClass().getResource("controlPanel.fxml"), null, new JavaFXBuilderFactory());

Scene scene = new Scene(page);
primaryStage.initStyle(StageStyle.TRANSPARENT);
primaryStage.setScene(scene);
primaryStage.show();
} catch (Exception ex) {
Logger.getLogger(ControlPanel.class.getName()).log(Level.SEVERE, null, ex);
}

}

@FXML
protected void doSomething() {
System.out.println("Done something");
}

最佳答案

首先,您要创建 ControlPanel 的第二个实例(第一个实例是通过 Application.launch() 创建的)。因此,您应该设置 Controller 实例或使用不同的类作为控件。

我们需要查看更多代码来说明为什么它不能在 Mac 上运行而在 Windows 上运行

关于JavaFX FXML 在 Mac OS 中无法正确加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14249767/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com