Javafx &引用;在fxml控制器类中找不到id“的可注入字段”;

Javafx &引用;在fxml控制器类中找不到id“的可注入字段”;,javafx,controller,fxml,scenebuilder,Javafx,Controller,Fxml,Scenebuilder,SceneBuilder没有将字段从控制器类注入到FXML,尽管它被@FXML注释。相反,当我在场景生成器的fx:ID中输入ID时,会显示错误消息“在fxml控制器类中找不到ID的可注入字段” 在过去,我成功地让它工作,ID显示一个下拉菜单,您只需选择适当的字段;但是我不确定它为什么停止工作 FXML: 一种解决方法是在IDE中打开xml文件,并手动将id名称添加到该文件中。因此,如果Scenebuilder没有为您执行此操作,并且对象涉及一个文本字段,则标记将如下所示 <TextFiel

SceneBuilder没有将字段从控制器类注入到FXML,尽管它被@FXML注释。相反,当我在场景生成器的fx:ID中输入ID时,会显示错误消息“在fxml控制器类中找不到ID的可注入字段”

在过去,我成功地让它工作,ID显示一个下拉菜单,您只需选择适当的字段;但是我不确定它为什么停止工作

FXML:


一种解决方法是在IDE中打开xml文件,并手动将id名称添加到该文件中。因此,如果Scenebuilder没有为您执行此操作,并且对象涉及一个文本字段,则标记将如下所示

<TextField />

您应该这样添加fx:id=“your\u id\u name”:

<TextField fx:id="userName" />


保存xml文件后,它应该会像一个符咒一样工作。希望这会有所帮助。

一个解决方法是在IDE中打开xml文件,并手动将id名称添加到该文件中。因此,如果Scenebuilder没有为您执行此操作,并且对象涉及一个文本字段,则标记将如下所示

<TextField />

您应该这样添加fx:id=“your\u id\u name”:

<TextField fx:id="userName" />


保存xml文件后,它应该会像一个符咒一样工作。希望这会有所帮助。

可能控制器的package语句只是由于复制和粘贴错误而被省略了?确实如此。我现在将编辑代码以包含此内容,好吧,这与FXML文件中的
fx:controller
属性中的包不同…再次是mi斯塔克,这是因为我一直在软件包周围移动控制器,希望它能纠正这个问题。我再次更正了代码…复制了所有代码,对我来说效果很好。如果我删除其中一个
fx:id
属性,SceneBuilder会在下拉列表中显示明智的选择,并且我看不到错误消息。SceneBuilder的哪个版本你有吗?大概是由于复制粘贴错误,控制器的package语句被省略了?确实如此。我现在将编辑代码以包含此摘要,好吧,这与你在FXML文件中的
fx:controller
属性中的包不一样……又是一个错误,因为我一直在围绕packa移动控制器ges希望它能纠正这个问题。我已经再次更正了代码…复制了所有代码,对我来说效果很好。如果我删除其中一个
fx:id
属性,SceneBuilder会在下拉列表中显示明智的选择,并且我看不到任何错误消息。您有哪个版本的SceneBuilder?