什么是JavaFX,FXML和Scene Builder?

时间:2014-03-16 06:58:47

标签: javafx javafx-2 fxml scenebuilder

我是JavaFX的新手,我正在尝试在其中执行一个项目。在一些教程中,他们提到了FXML。两者有什么区别?

我正在使用NetBeans IDE开发我的项目,并在使用FXML时听说过使用Scene Builder。什么是Scene Builder?我应该使用JavaFX,FXML和Scene Builder来顺利开发我的项目吗?

请用简单的语言回答上述问题。如果可能的话,请给我一些关于如何使用JavaFX的好教程。

2 个答案:

答案 0 :(得分:21)

将JavaFX视为一堆软件包,允许用户创建丰富的互联网和桌面应用程序 如果您了解Swing或AWT,那么您就知道它们用于创建GUI应用程序。 JavaFX还允许您创建GUI应用程序,但编程较少,并且可以使用更多视觉效果。

FXML是JavaFX用于创建屏幕布局的文件格式,但您甚至可以直接编写用户界面。虽然使用SceneBuilder创建FXML文件要容易得多。

SceneBuilder是一个可以拖放JavaFX UI组件的应用程序,然后告诉JavaFX程序使用fxml文件来显示用户界面。

这是一个很好的教程:Learn JavaFX 您可以通过以下链接查看基于JavaOne 2013 JavaFX的视频:JavaFX at JavaOne 2013

强烈推荐

Official Oracle Tutorials on JavaFX。这些教程涵盖了FXML,SceneBuilder,CSS和许多其他主题。在使用NetBeans时,使用Oracle教程应该很简单,因为它们都附带NetBeans项目(只需在每个教程页面右侧的列中查找项目zip文件)。

我建议您下载JDK 8并使用JavaFX 8,并在JavaFX应用程序中使用Java 8的新功能,如Lambda Expressions等,以使您的代码紧凑和清洁。

答案 1 :(得分:4)

如果您之前听说过/ Swing,请将JavaFX视为更酷,更易于使用的替代和替代(JavaFX将Swing替换为java的桌面主要平台和互联网应用,虽然在可预见的未来都将继续得到支持。)

FXML只不过是:

  

Oracle Corporation创建的基于XML的用户界面标记语言,用于定义JavaFX应用程序的用户界面

您可以直接通过代码创建用户界面,也可以使用带有.fxml后缀的fxml文件创建用户界面。例如,my_ui.fxml

JavaFX应用程序开发中最重要的工具之一是JavaFX Scene Builder(下面的快照)它允许您轻松地拖放控件(小部件)以在几分钟内创建UI:

enter image description here

当您将项目拖动到布局中时,会自动生成此布局的代码(在your_layout.fxml文件中)。

看看这些关于JavaFX的很酷的教程:

Getting Started with JavaFX

JavaFX: The Next Generation in Java Programming