gpt4 book ai didi

java - 事件处理程序不在命名空间中

转载 作者:行者123 更新时间:2023-12-01 09:34:05 25 4
gpt4 key购买 nike

如果我尝试加载带有名为“vorige”的按钮的屏幕,则会出现错误。这是我得到的错误:

enter image description here

我觉得很奇怪,因为注销按钮的工作方式完全相同,并且没有错误。如果我删除 FXML 文件中的 onAction 方法,异常就会消失。

亲切的问候

Fietsscherm Controller

@FXML
private Button buVorige;

/**
* Initializes the controller class.
*/
public void setMain(Vivesbike main) {
this.main = main;
}

/**
*
* @param vorigeEvent
*/
public void Vorige(ActionEvent vorigeEvent){
main.loadBeginscherm();
}

Fietsscherm FXML

<Button fx:id="buVorige" layoutX="31.0" layoutY="23.0" mnemonicParsing="false" onAction="#Vorige"    prefHeight="39.0" prefWidth="102.0" text="Vorige" />

这个函数在main中

    public void loadBeginscherm(){
try {
FXMLLoader loader = new FXMLLoader(this.getClass().getResource("view/Beginscherm.fxml"));
BeginschermController controller = new BeginschermController();
loader.setController(controller);
Parent root = loader.load();
controller.setMain(this);
Scene scene = new Scene(root);
stage.setScene(scene);
stage.centerOnScreen();
stage.setTitle("Keuzescherm");
stage.show();
} catch (IOException ex) {
System.out.println("Fout tijdens het laden van het beginscherm: "+ex.getMessage());
}
}

public void loadFietsscherm(){
try {
FXMLLoader loader = new FXMLLoader(this.getClass().getResource("view/Fietsscherm.fxml"));
BeginschermController controller = new BeginschermController();
loader.setController(controller);
Parent root = loader.load();
controller.setMain(this);
Scene scene = new Scene(root);
stage.setScene(scene);
stage.centerOnScreen();
stage.setTitle("Fietsscherm");
stage.show();
} catch (IOException ex) {
System.out.println("Fout tijdens het laden van het fietsscherm: "+ex.getMessage());
}
}

最佳答案

在 loadFietsscherm 方法中,您将 BeginschermController 连接到 Fietsscherm.fxml,但我确信 FietsschermController 隐含在那里。

关于java - 事件处理程序不在命名空间中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39152119/

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