Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 为什么.fxml文件未在场景生成器中打开?_Java_Javafx_Fxml_Scenebuilder - Fatal编程技术网

Java 为什么.fxml文件未在场景生成器中打开?

Java 为什么.fxml文件未在场景生成器中打开?,java,javafx,fxml,scenebuilder,Java,Javafx,Fxml,Scenebuilder,在场景生成器中打开abc.fxml文件时出现问题,显示以下对话框: 这是一个abc.fxml代码: `<?xml version="1.0" encoding="UTF-8"?> <?import com.jfoenix.controls.JFXButton?> <?import javafx.scene.layout.AnchorPane?> <fx:root fx:id="w" prefHeight="400.0" prefWidth="40

在场景生成器中打开abc.fxml文件时出现问题,显示以下对话框:

这是一个abc.fxml代码:

`<?xml version="1.0" encoding="UTF-8"?>

<?import com.jfoenix.controls.JFXButton?>
<?import javafx.scene.layout.AnchorPane?>


<fx:root fx:id="w" prefHeight="400.0" prefWidth="400.0" type="AnchorPane" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.65">
   <children>
      <JFXButton fx:id="w1" layoutX="138.0" layoutY="243.0" />
      <JFXButton fx:id="w2" layoutX="256.0" layoutY="230.0" />
   </children>
</fx:root>`
`
`
这些是在Show details中提到的细节:

`<?xml version="1.0" encoding="UTF-8"?>

<?import com.jfoenix.controls.JFXButton?>
<?import javafx.scene.layout.AnchorPane?>


<fx:root fx:id="w" prefHeight="400.0" prefWidth="400.0" type="AnchorPane" xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8.0.65">
   <children>
      <JFXButton fx:id="w1" layoutX="138.0" layoutY="243.0" />
      <JFXButton fx:id="w2" layoutX="256.0" layoutY="230.0" />
   </children>
</fx:root>`

将.fxml文件拖动到场景生成器界面,而不是在项目视图中双击.fxml。这应该行得通

如果您面临此问题,请检查您的FXML标记是否正确,因为我上面的错误是这一行

`<?xml version="1.0" encoding="UTF-8"?>
`

从第一行移除火“`”。右键单击fxml文件并使用场景生成器打开。如果您将再次获得弹出窗口,请再次右键单击并再次打开,它肯定会打开。但是现在Scene Builder可以单独安装,您可以在其中拖放fxml。

我也遇到了同样的问题。我做了很多事情,但没有一件对我有用,所以我用Notepad++检查了我的FXML文件代码,然后我意识到,我在FXML文件中使用了JFonix组件。(由于某种原因,我从scene builder中删除了这个jar,但忘记了再次添加它),所以我将JFonix jar添加到scene builder中,它对我起了作用。

是的,我也面临着同样的问题。过了一段时间,我意识到我已经使用了一些外部scenebuilder工具,如jfoenix、fontawsome等,所以我们还必须将其包括在scene builder中

您的文件有一些错误,您应该解决这些问题以便打开它,您可以向我们显示您的代码如果您按“显示详细信息”会显示什么?@James\u D现在我在“显示详细信息”中附加了链接,您可以检查有关它的详细信息。@youcefladani我添加了abc.fxml的代码“由以下原因引起:java.lang.ClassNotFoundException:com.jfoenix.controls.JFXButton”。因此无法解析.fxml文件中的第一个导入。我不确定sceneBuilder是否能够处理第三方控件,否则您需要解决它。(例如,通过普通文本编辑器编辑.fxml文件)。