使用FXML或不使用FXML开发JavaFX应用程序有哪些优缺点?
对于开发企业JavaFX应用程序应遵循哪种方法?
答案 0 :(得分:4)
FXML缺点:加载和显示需要稍长的时间。
FXML优点:
绝对在企业应用程序中使用FXML!
答案 1 :(得分:3)
我会在Jurgens列表中添加两个版本。
如果您正在使用FXML实例化您的视图有点不方便。至少从我的角度来看。
Node explorer = new MyExplorerWidget();
或
Node explorer = cdicontainer.newInstance(MyExplorerWidget.class);
比
更令人愉快FXMLLoader loader = new FXMLLoader(getClass().getResource("com.mycompany.some.very.long.name.MyExplorerWidget.fxml"),explorerwidgetresouces);//Of course we want our app internationalized
Node explorer = loader.load();
另一点是FXML是静态的。如果要在运行时根据某些模型生成UI,则无论如何都要编写UI代码。我最终得到了像PropertyGrid.fxml
<AnchorPane xmlns:fx="http://javafx.com/fxml/1" xmlns="http://javafx.com/javafx/8" fx:controller="PropertyGridController">
<children>
<VBox fx:id="vbox" layoutX="63.0" layoutY="-28.0" prefHeight="172.0" prefWidth="163.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0" />
</children>
</AnchorPane>
PropertyGridController
。
public class PropertyGridController{
@FXML
VBox vbox;
....
public void setModel(PropertySheet model){
//.... tons of code to generate the actual property grid and add it to the view
}
}