我正在尝试学习JavaFX 2.0 + FXML,我觉得制作fxml文件有点不舒服,不知道我能把它放在哪里以及我能做些什么。我的意思是FXML中哪些标签是可能的,哪些属性是evety标签?值evety属性可以具有哪些值,等等。 网络中有一些例子,但它们没有显示FXML的漏洞功能。 我曾尝试将NetBeans和Eclipse插件用于JavaFX 2.0,但是,它们都没有FXML的任何内容,它们只是验证开放式标签和其他简单的东西,这些都是evety XML编辑器可以做到的。也许我错误地配置了这些插件。 那么,有没有完整的文献(FXML的所有标签,属性及其可能的值)?
答案 0 :(得分:37)
FXML参考
Introduction to FXML描述了标记的语法和使用模式,在学习FXML时非常重要。它没有定义FXML中可用的所有元素。
FXML永远不会有完整的引用(也不是xml架构),因为它通过反映类路径中的Java类并根据类的属性定义元素和属性来工作。
FXML的创作者(格雷格·布朗)建议:
所以目前Javadoc是最好的参考。
对于JavaFX的未来Javadoc版本,JavaFX团队正在考虑在Javadoc中包含FXML示例。
This forum thread和this forum thread包含有关fxml文档的讨论和链接。
IDE中的FXML代码完成
这些IDE推理引擎的工作原理是反映Java类,与FXML实现的方式相同。
当您使用ControlsFX之类的库或开发自己的JavaFX组件时,IDE代码完成可以使用您创建或链接的新类和属性。
答案 1 :(得分:2)
为了让答案更新,她的 Javafx 8 Javadoc
答案 2 :(得分:-2)
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.text.*?>
<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane id="AnchorPane" prefHeight="507.0" prefWidth="485.0"
stylesheets="@style.css" xmlns="http://javafx.com/javafx/8"
xmlns:fx="http://javafx.com/fxml/1"
fx:controller="javafxapplication11.FXMLDocumentController">
<children>
<MenuBar layoutY="2.0">
<menus>
<Menu mnemonicParsing="false" text="File">
<items>
<MenuItem mnemonicParsing="false" text="Close" />
</items>
</Menu>
<Menu mnemonicParsing="false" text="Edit">
<items>
<MenuItem mnemonicParsing="false" text="Delete" />
</items>
</Menu>
<Menu mnemonicParsing="false" text="Help">
<items>
<MenuItem mnemonicParsing="false" text="About" />
</items>
</Menu>
</menus>
</MenuBar>
<Label layoutX="54.0" layoutY="60.0" prefHeight="27.0" prefWidth="377.0" text="Choose Any One Of The Options" textFill="#2614e8">
<font>
<Font name="Arial Bold" size="24.0" />
</font>
</Label>
<CheckBox fx:id="c1" layoutX="54.0" layoutY="116.0" mnemonicParsing="false" onAction="#clicked1" text="Add DCU" />
<CheckBox fx:id="c2" layoutX="54.0" layoutY="169.0" mnemonicParsing="false" onAction="#clicked2" text="Add Meter" />
<CheckBox fx:id="c3" layoutX="54.0" layoutY="224.0" mnemonicParsing="false" onAction="#clicked3" text="Add Iologic" />
<CheckBox fx:id="c4" layoutX="56.0" layoutY="273.0" mnemonicParsing="false" onAction="#clicked4" text="View DCU" />
<CheckBox fx:id="c5" layoutX="54.0" layoutY="324.0" mnemonicParsing="false" onAction="#clicked5" text="View Meter" />
<CheckBox fx:id="c6" layoutX="51.0" layoutY="372.0" mnemonicParsing="false" onAction="#clicked6" text="View Iologic" />
<CheckBox fx:id="c7" layoutX="54.0" layoutY="417.0" mnemonicParsing="false" onAction="#clicked7" text="Test DCU" />
<CheckBox fx:id="c8" layoutX="54.0" layoutY="461.0" mnemonicParsing="false" onAction="#clicked8" text="Diagnostics" />
</children>
</AnchorPane>