1 JavaFX Scene Builder 2.0 发布说明
JavaFX Scene Builder 2.0 是一个设计工具,用于 JavaFX API 类,这些类包含在 Java 平台 8,标准版(Java SE 8)发布中。该工具可以帮助您进行与应用程序逻辑链接的应用程序用户界面的可视布局。您只需将图形用户界面(GUI)组件拖放到 JavaFX 场景中,即可自动生成布局的 FXML 源代码。
本版本的新功能
JavaFX Scene Builder 2.0版本增加了对Java Platform, Standard Edition 8 (Java SE 8)中提供的JavaFX API库的支持,以及自Scene Builder 1.1版本以来的重要新功能和可用性改进。
此版本还对JavaFX Scene Builder的架构和代码进行了重大重构,以将Scene Builder工具拆分为可以直接集成到更大的应用程序(如IDE)中的组件。
此版本包括以下新功能或修改功能:
-
JavaFX Scene Builder Kit. JavaFX Scene Builder Kit是一个API,允许将Scene Builder面板和功能直接集成到更大的应用程序或Java IDE(如NetBeans,IntelliJ和Eclipse)的GUI中。有关更多详细信息,请参见使用JavaFX Scene Builder Kit。
-
能够向库中添加自定义GUI组件。现在可以将从第三方JAR文件导入的自定义组件永久添加到可用GUI组件的库中。有关更多信息,请参见向库中添加自定义组件。
-
支持新的JavaFX 8 UI组件。在Java SE 8中引入的新UI组件TreeTableView、DatePicker和SwingNode现在在Scene Builder 2.0中得到支持。要查看可用的JavaFX 8 UI组件列表,请在库面板的搜索文本字段中输入
FX8
。 -
3D支持。现在可以在Scene Builder工具中加载和保存包含3D对象的FXML文档。您可以使用Inspector面板查看和编辑3D对象的属性。但是,您不能使用Scene Builder工具创建新的3D对象。有关更多信息,请参见JavaFX Scene Builder用户指南。
-
支持富文本。在GUI组件的库中现在有一个新的容器TextFlow可用。您可以将多个文本节点和其他类型的节点拖放到TextFlow容器中。您还可以直接操作文本节点以重新排列它们在容器中的位置。每个文本节点还提供了内联和属性编辑功能。
-
库面板改进。库面板的默认查看选项是一个新功能,它允许您将所有组件类别作为可折叠部分查看。
-
层次结构面板改进。现在更灵活地将对象从一个容器重新父级到另一个容器。还可以从层次结构面板拖放对象到内容面板,反之亦然。您还可以选择多个对象以重新父级它们。
-
内容面板改进。您现在可以直接在内容面板中操作HBox、VBox、FlowPane或Toolbar容器的组件以重新排序它们。您还可以在容器中的任何位置插入新组件。请注意,目前无法直接操作TilePane容器。
-
检查器面板改进。检查器面板中的许多属性编辑器使用建议列表对话框窗口,该窗口显示可选择的值列表,您可以从中进行选择,而不是手动输入。例如,CSS样式编辑器提供了适用于当前选定对象的CSS属性列表。列表处理也得到简化。现在支持不同类型组件(例如Button + TextField)的多选。此外,许多属性编辑器的可用性,如AnchorPane约束、旋转和填充,也得到了改进。
-
预览窗口改进。 当前FXML文档正在编辑时,预览窗口中的内容会自动刷新。因此,无需使用刷新命令来预览修改后的UI布局。
-
Include FXML命令的更改。 当您点击菜单栏中的文件,然后点击包含时,只有在当前编辑的FXML文档已保存在系统磁盘上且不为空时,才能选择FXML菜单项。
入门指南
要开始熟悉JavaFX Scene Builder,请阅读以下文档,这些文档可以在http://docs.oracle.com/javase/8/javase-clienttechnologies.htm
找到。
-
JavaFX Scene Builder概述 - JavaFX Scene Builder 2.0工具的高级概述。
-
JavaFX Scene Builder用户指南 - 介绍JavaFX Scene Builder 2.0的用户界面和功能。
-
使用JavaFX Scene Builder入门 - 逐步教程,用于创建定义简单问题跟踪应用程序用户界面的FXML文件。
-
使用JavaFX Scene Builder与Java IDE - 教程,提供有关如何配置NetBeans、Eclipse或IntelliJ IDE与Scene Builder一起使用的信息。
已知限制
以下问题已知存在。每个项目前面的数字是JavaFX Scene Builder问题仪表板中的报告编号。要查看完整的问题列表,请登录JavaFX Scene Builder的JIRA项目,网址为http://javafx-jira.kenai.com/browse/DTL
。您必须是注册的JIRA用户才能访问这些报告。
-
DTL-6670
- 当移动FXML文档的根组件时,内容面板可能变得无法使用并抛出异常。描述:如果您的FXML文档的根组件是一个自定义GUI组件(即其类是定制的并在Scene Builder库中添加了一个JAR文件),尝试从内容面板拖动该组件可能会导致破坏,抛出异常,并留下视觉伪影(黄色阴影)。
解决方法:关闭并重新打开FXML文档窗口。
-
DTL-6664
- 在Windows平台上,如果先前已导入一个JAR
文件,则导入JAR
文件可能会失败。描述:在Windows平台上,如果Custom Library文件夹中已存在
JAR
文件,则在Library面板中放置一个JAR
文件可能会失败。会出现一个错误对话框窗口,指示复制JAR文件的操作失败。解决方法:关闭出现的错误对话框窗口并退出Scene Builder。手动将JAR文件复制到Custom Library文件夹中,然后重新启动Scene Builder。要确定Custom Library文件夹的位置,在Library面板的菜单中选择Custom Library Folder,在Windows平台上选择Reveal in Explorer,在Mac OS平台上选择Reveal in Finder,在Linux平台上选择Reveal on Desktop。
-
DTL-6661
- 当Scene Builder工具使用软件渲染管道时,缩放命令无法正常工作。描述:当您的系统上没有可用的硬件加速时,从菜单栏中点击View,然后选择Zoom无法正常工作。内容面板上的对象轮廓受到缩放命令的影响,但对象本身保持其原始大小。要检查您的系统是否未使用硬件加速,请从菜单栏中点击Help,然后选择About Scene Builder。在弹出的对话框窗口中,滚动到JavaFX部分,应显示
Hardware acceleration DISABLED
。解决方法:没有可用的解决方法。
-
DTL-6659
- 在Linux平台上,当从可用值列表中进行选择时,使用一些Inspector编辑器会很困难。描述:在Linux平台上,使用一些Inspector编辑器时,从可用值列表中选择一个值会很困难。这影响了例如Font编辑器中的字体大小列表,以及编辑多个效果属性时的一些列表。
解决方法:一旦显示可用值列表,请不要移动鼠标光标。使用键盘的箭头键在值列表中导航。
-
DTL-6636
- 在Linux平台上,关闭窗口命令无法正常工作。描述:当您按下Ctrl+W,或者点击菜单栏的文件并选择关闭窗口时,该命令无法关闭窗口。
解决方法:使用窗口上的原生关闭按钮来关闭窗口。
-
DTL-6620
- 在使用TitledPane、Tab或ScrollPane容器时,粘贴到命令在编辑菜单中不可用。描述:从当前布局中复制任何现有的GUI元素。然后从库面板中拖放一个TitledPane、Tab或ScrollPane容器到内容面板并保持选中状态。尝试通过点击菜单栏的编辑并选择粘贴到将复制的GUI元素粘贴到选中的容器中。由于该命令被禁用且无法选择,您无法选择粘贴到命令。
解决方法:将复制的GUI元素粘贴到内容面板中除了目标TitledPane、Tab或ScrollPane容器之外的其他位置,然后使用拖放操作将其重新父级到目标容器中。
-
DTL-6393
- 在Mac OS平台上,内容面板中有时会忽略拖动手势。描述:在Mac OS平台上,在内容面板中进行两次连续的拖放操作而不移动鼠标是不可能的。
解决方法:如果您想在将对象放置在内容面板后立即移动它,请移动鼠标以使第二次拖动操作生效。
-
DTL-6137
- 使用Inspector面板设置属性值可能对当前显示在内容面板中的布局没有任何影响。描述:在使用JavaFX主题命令从菜单栏的预览菜单中将JavaFX主题设置为Caspian主题后,使用Inspector面板设置属性值可能对当前显示在内容面板中的GUI布局没有任何影响。
解决方法:从菜单栏的预览菜单中选择显示预览命令,以查看实际渲染的布局,包括您通过Inspector面板应用的属性设置。
-
DTL-6033
- 使用“修剪文档到选择”命令时,选择的GridPane元素的选择手柄出现在GridPane周围的其他位置。描述:在菜单栏中点击“编辑”,选择一个GridPane元素后,使用“修剪文档到选择”命令,GridPane的选择手柄可能会暂时出现在GridPane元素周围的错误位置。
解决方法:调整Scene Builder窗口大小以刷新布局视图,并将选择手柄放置在GridPane元素的正确位置。
-
DTL-5924
- 如果系统中已安装JavaFX Scene Builder 2.0版本,则无法安装Scene Builder 1.1版本,除非先删除Scene Builder 2.0的安装。但是,如果已安装Scene Builder 1.1,则可以安装Scene Builder 2.0。描述:如果检测到系统中已安装Scene Builder 2.0版本,JavaFX Scene Builder 1.1安装程序将拒绝安装该产品。安装程序会提示已安装了更新版本的应用程序。
解决方法:在安装JavaFX Scene Builder 1.1之前,先从系统中卸载JavaFX Scene Builder 2.0。
使用JavaFX Scene Builder Kit
JavaFX Scene Builder Kit包括以下组件:
-
JavaFX Scene Builder 2.0应用程序包中包含的
SceneBuilderKit.jar
文件。当安装Scene Builder时,JAR文件会安装在以下位置:-
Mac OS X: <install_dir>
/Contents/Java/SceneBuilderKit.jar
-
Windows: <install_dir>
\app\SceneBuilderKit.jar
-
Linux: <install_dir>
/app/SceneBuilderKit.jar
-
-
包含JavaFX Scene Builder Kit的API javadoc的
javafx_scenebuilder_kit_javadoc-2_0.zip
文件。要下载该工具包,请访问Java SE下载页面的附加资源部分,网址为http://www.oracle.com/technetwork/java/javase/downloads/index.html
,并找到JavaFX Scene Builder部分。 -
可以从Java SE下载页面的附加资源类别中的JavaFX Scene Builder 2.0部分下载的
javafx_scenebuilder_kit_samples-2_0
.zip
文件。javafx_scenebuilder_kit_samples-2_0.zip
文件包含SceneBuilderHello和SceneBuilderHelloSW示例。SceneBuilderHello应用程序显示了如何使用Scene Builder Kit
API的最小Java源代码示例。SceneBuilderHelloSW是SceneBuilderHello示例的变体。它展示了如何从基于Swing的应用程序中使用Scene Builder Kit API。这些示例以NetBeans项目的形式提供。