Javafx通过单击fxml添加新选项卡

Javafx通过单击fxml添加新选项卡,java,javafx,javafx-2,javafx-8,Java,Javafx,Javafx 2,Javafx 8,我正在尝试使用fxml添加新选项卡 我正在尝试以下代码: Tab sd=new Tab("Customeradd"); sd.setContent(Source.sourceFor("","Customeradd.fxml")); tabpanel.getTabs().add(sd); 我在sd.setContent(Source.sourceFor(“,”Customeradd.fxml“)一行中发现语法错误和选项卡面板是我的选项卡面板 错误看起来像 请帮助我假设您的FXML与要从中加载它

我正在尝试使用fxml添加新选项卡

我正在尝试以下代码:

Tab sd=new Tab("Customeradd");
sd.setContent(Source.sourceFor("","Customeradd.fxml"));
tabpanel.getTabs().add(sd);
我在
sd.setContent(Source.sourceFor(“,”Customeradd.fxml“)一行中发现语法错误
选项卡面板
是我的
选项卡面板

错误看起来像


请帮助我

假设您的FXML与要从中加载它的类位于同一目录,您应该执行以下操作(如果您的FXML定义了选项卡窗格):

现在,假设在MyTab.fxml文件中有一个漂亮的选项卡:

pane.getTabs().addAll((Tab)FXMLLoader.load(this.getClass().getResource("MyTab.fxml")));

真的很容易

假设您的FXML与要从中加载它的类位于同一目录中,您应该执行以下操作(如果您的FXML定义了选项卡窗格):

现在,假设在MyTab.fxml文件中有一个漂亮的选项卡:

pane.getTabs().addAll((Tab)FXMLLoader.load(this.getClass().getResource("MyTab.fxml")));


真的很容易

错误是什么?
Source.sourceFor(…)
返回什么?它返回语法错误。我想在选项卡中加载一个fxml是否有任何新的方法没有人能够真正帮助您,除非您能告诉我们(…)的
Source.sourceFor
的返回类型,以及您得到的是什么“语法错误”。我用图片更新了我的问题什么是错误?
Source.sourceFor(…)
返回什么?它返回语法错误。我想在选项卡中加载fxml是否有任何新方法没有人能真正帮助您,除非您能告诉我们(…)的
Source.sourceFor的返回类型,以及您遇到的“语法错误”。我已经用图片更新了我的问题,但我想在选项卡中加载fxml文件必须使用选项卡制作一个fxml,然后说
Tab t=fxmloader.load(…)
显示如何添加选项卡的已编辑答案。。。但是请注意,如果可以的话,只需在同一个FXML中声明TabPane和tab。只有在动态操作时,才应该使用Java添加这样的选项卡。错误
Java.lang.ClassCastException:javafx.scene.layout.Ancorpane不能强制转换为javafx.scene.control.Tab
如果FXML中有一个Ancorpane,请执行
Ancorpane Ancorpane=FXMLLoader…
然后执行
Tab.setContent(Ancorpane)
。但是我想在一个选项卡中加载fxml文件,必须用一个选项卡创建一个fxml,然后说
Tab t=FXMLLoader.load(…)
显示如何添加选项卡的已编辑答案。。。但是请注意,如果可以的话,只需在同一个FXML中声明TabPane和tab。只有在动态操作时,才应该使用Java添加这样的选项卡。错误
Java.lang.ClassCastException:javafx.scene.layout.ancorpane不能强制转换为javafx.scene.control.Tab
如果FXML中有一个ancorpane,请执行
ancorpane ancorpane=fxmloader…
然后执行
Tab.setContent(ancorpane)