【问题标题】:Use Java API instead FXML使用 Java API 代替 FXML
【发布时间】:2013-05-28 05:34:33
【问题描述】:

我有兴趣使用纯 JavaFX API 代替 FXML 来对用户界面进行建模。另外,如果我使用 SceneBuilder 创建 FXML GUI,我可以将 XML 代码转换为纯 Java 代码吗?

【问题讨论】:

  • 我想知道你为什么要做这样的事情。一般来说,GUI 代码,尤其是 JavaFX 代码,冗长、冗长且难看。在我看来,FXML 的主要好处是它可以让您清除应用程序中冗长的 JavaFX 代码。还有其他好处。 FXML 使您能够编辑您的 GUI,而无需为多种更改重新编译您的应用程序。我建议您学习将 FXML 与 JavaFX 结合使用以获得所有这些好处。
  • @scottb 你能提出什么解决方案?
  • 就我而言,我使用 Scene Builder 为我的 GUI 创建模板。我不倾向于尝试用 FXML 做任何非常花哨的事情。没有脚本等。我用它来为我的 GUI 创建骨架,从我的控制器类中删除大量原本非常丑陋的 JavaFX 代码。然后我在控制器类的代码中动态操作感兴趣的控件。我认为这就是大多数人使用 FXML 所做的事情。 FXML 比我使用它的方式强大得多,但我只想从我的控制器类中删除所有丑陋、嘈杂、难看的 JavaFX 代码。

标签: java javafx-2 javafx-8


【解决方案1】:
can I use pure JavaFX API instead FXML for modeling the user interface.

是的,这是(曾经)在JavaFX 2.0 中构建用户界面的经典方式。

can I convert the XML code into pure Java code?

目前(据我所知),没有从FXML 文档自动生成Java 代码的方法。

【讨论】:

  • 感谢您的回复。有没有类似 SceneBuilder 但生成纯 Java 代码的 Visual JavaFX 应用程序的工具?
  • 喜欢 Swing matisse 吗?在 javafx 中我从来没有想过这样的事情。
【解决方案2】:

就像其他答案一样,如果您查看官方 Java FX 教程,他们会使用纯代码对应用程序中的每个 GUI 内容进行编码。

为什么要使用纯 Java API?如果你使用 FXML 等 Controller 类,你可以获得很好的基于 MVC 的应用程序。

我认为你应该检查一下Visage。它是 GUI 应用程序的声明性代码。是的,我同意该项目自 2011 年以来一直无人看管。

【讨论】:

  • 有趣。 Visage 看起来自 2011 年以来没有任何活动。你在使用这个吗?这个项目还活着吗?
  • 这是个问题,对。我不完全使用它。我认为它不仅兼容 Java FX,而且兼容 Groovy 和 Grails。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-10-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-01-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多