欢迎来到JavaFX的世界
我不确定为什么您会遇到带有JDK 1.8的JavaFX 2.2问题,因为JDK 8中包含JavaFX 8,并且默认情况下必须使用它。
只是为了快速介绍JavaFX以及它与Swing的区别。请遵循以下几点:
- 您将有机会使用JavaFX 2.0+中引入的 FXML 将视图与功能分离,而不必遵循用Java代码构建视图/ UI并将视图中的功能代码弄乱的传统。
- JavaFX具有强大的 CSS 集成,可让您装饰视图(这是 Swing 中所 没有的) 。
- 由于有了 SceneBuilder 支持,因此开发速度更快。
JavaFX 1 +,2 +和8+之间的区别
- JavaFX 1+基本上是一种称为JavaFX脚本的脚本语言,与Java语言有很大的不同。
- JavaFX 2.0改变了JavaFX的面貌。现在,所有JavaFX API都可以作为纯Java API使用。在此阶段,JavaFX还引入了FXML!
- JavaFX 8.0带来了JavaFX的新面貌,其中JavaFX被接受为 Java 8 的组成部分。
兼容性 -所有JavaFX应用程序都具有 向前兼容性 ,即 JavaFX 2.0+与Java 7、8及更高版本兼容 。尽管使用
JavaFX 8创建的 应用程序 与Java 7不兼容 。
JavaFX 1.3支持已从Java
1.7中取消。
发展模式
- JavaFX的提供了一个机会使用你的选择来构建应用程序-即使用 建筑用纯Java视图的传统方法 或使用 FXML 。
- JavaFX严格遵循MVC模式,将视图及其事件分开。使用 FXML 创建视图,并且控制器是Java文件。
从Oracle文档
从模型视图控制器(MVC)角度来看,包含用户界面描述的FXML文件是视图。
控制器是Java类,可以选择实现Initializable类,该类被声明为FXML文件的控制器。该模型由在Java端定义的域对象组成,您可以通过控制器将其连接到视图。
有关 FXML的 更多信息和 专业人士 ,请遵循:
简而言之,javafx脚本是在javafx 2.0之前使用的,不再使用!
如果您更熟悉Java中的编码UI,则可以使用此方法。但是,我个人不喜欢这种方法,因为当您的应用程序过于复杂时,它会使代码变得复杂。
JavaFX script在JavaFX 2.0之前已在使用,并且不再使用
Javafx 2.0中引入了基于FXML的UI设计。这些帮助程序员使用MVC方法对javafx应用程序进行编码。在这里可以找到关于FXML的很好的介绍。
在Oracle文档的一部分中,为什么使用FXML
从模型视图控制器(MVC)角度来看,包含用户界面描述的FXML文件是视图。控制器是Java类,可以选择实现Initializable类,该类被声明为FXML文件的控制器。该模型由在Java端定义的域对象组成,您可以通过控制器将其连接到视图。
可以使用Scene Builder轻松设计FXML,Scene Builder是Javafx应用程序的Drag n Drop UI设计器。使用FXML具有以下优点:
您的应用程序遵循MVC结构,就像企业JavaEE应用程序一样。
表示层(UI)与应用程序层(逻辑)隔离开来,这使您可以轻松地look and feel在需要时更改应用程序的版本,就像网站一样!
FXML引入了scalability and maintainability您的应用程序。
我对您的建议是使用FXML。如果您不了解它们,请学习它们。这将是值得的!



