Java 在.fxml中添加自定义项

Java 在.fxml中添加自定义项,java,javafx,fxml,Java,Javafx,Fxml,我创建了一个名为NavButton的类。我希望能够将其用于.fxml文件 问题是--> 我用SceneBuilder创建了一个.fxml文件,其中包含一些按钮,然后用NavButton替换标记Button,但它不起作用 我可以找到有关如何使用SceneBuilder在.fxml中添加服装项目的教程,但没有找到如何手动添加服装项目的教程 导航按钮类: 有问题的.fxml文件: 错误为: javafx.fxml.LoadException:NavButton不是有效的类型。 /C:/eclips

我创建了一个名为
NavButton
的类。我希望能够将其用于.fxml文件

问题是--> 我用
SceneBuilder
创建了一个.fxml文件,其中包含一些按钮,然后用
NavButton
替换标记
Button
,但它不起作用

我可以找到有关如何使用SceneBuilder在.fxml中添加服装项目的教程,但没有找到如何手动添加服装项目的教程

导航按钮类:

有问题的.fxml文件:


错误为:

javafx.fxml.LoadException:NavButton不是有效的类型。
/C:/eclipse/Building%20XRPlayer/builder/bin/fxmls/NavigationBar.fxml:25
位于javafx.fxml.fxmloader.constructLoadException(fxmloader.java:2597)
在javafx.fxml.fxmloader.createElement(fxmloader.java:2774)
在javafx.fxml.fxmloader.processStartElement(fxmloader.java:2704)
在javafx.fxml.fxmloader.loadImpl(fxmloader.java:2527)
在javafx.fxml.fxmloader.loadImpl(fxmloader.java:2441)
在javafx.fxml.fxmloader.load(fxmloader.java:2409)
在windows.MainWindow$NavigationBar。(MainWindow.java:533)
..........

更改
按钮的类时,您似乎没有更新导入

首先-由于FXML确实不能很好地使用默认包(无论如何,这是强烈反对的),因此您需要将
NavButton
类放在一个包中:

package com.mycompany.mydepartment.myproject ;

// imports ...

public class NavButton extends Button {
   // code ...
}
然后将导入添加到FXML文件:


更改
按钮的类时,您似乎没有更新导入

首先-由于FXML确实不能很好地使用默认包(无论如何,这是强烈反对的),因此您需要将
NavButton
类放在一个包中:

package com.mycompany.mydepartment.myproject ;

// imports ...

public class NavButton extends Button {
   // code ...
}
然后将导入添加到FXML文件:



@GoXr3Plus请记住始终提及类以及代码中的基本内容,不是使用强文本函数,而是使用格式。@JavaNoob谢谢我会的。@GoXr3Plus为了避免这个问题,我首先要做的是将代码复制到问题中,然后选择它,然后按工具栏上的“格式化”功能按钮。@James\u D我在试人...)。我已经发布了不起作用的.fxml。我用NavButton标记更改了Button标记。我在问题中说过,我以前提供的.fxml是有效的,但是当你用NavButton标记更改Button标记时,它就不起作用了。@JavaNoob已经完成了,兄弟。@GoXr3Plus请记住总是提到类以及代码中的基本内容不是使用强文本函数,而是使用格式。@JavaNoob谢谢,我会的。@GoXr3Plus为了避免这个问题,我所做的是先将代码复制到问题中,然后选择它,然后按下工具栏上的格式函数按钮。@James_D我在试人...)。我已经发布了不起作用的.fxml。我用NavButton标记更改了按钮标记。我在问题中说过,我以前提供的.fxml可以工作,但是当你用NavButton标记更改按钮标记时,它就不起作用了。@JavaNoob完成了,兄弟。这就是我要说的……谢谢:)这就是我要说的……谢谢:)
javafx.fxml.LoadException: NavButton is not a valid type.
 /C:/eclipse/Building%20The%20XRPlayer/builder/bin/fxmls/NavigationBar.fxml:25

at javafx.fxml.FXMLLoader.constructLoadException(FXMLLoader.java:2597)
at javafx.fxml.FXMLLoader.createElement(FXMLLoader.java:2774)
at javafx.fxml.FXMLLoader.processStartElement(FXMLLoader.java:2704)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2527)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2441)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:2409)
at windows.MainWindow$NavigationBar.<init>(MainWindow.java:533)
 ..........
package com.mycompany.mydepartment.myproject ;

// imports ...

public class NavButton extends Button {
   // code ...
}