当前位置: 首页 > 知识库问答 >
问题:

将JavaFX场景保存到FXML文件中

终育
2023-03-14

有人知道如何将JavaFX场景保存到可以由JavaFX FXMLLoader加载的FXML文件中吗?

SceneBuilder允许这样做,但如果我手动构建场景,我如何将其保存到FXML文件中?

共有1个答案

储国发
2023-03-14

如果您的意思是从Java构建的运行屏幕构建fxml文件,简短的回答是您不能。

fxmlLoader被设计为仅用于加载文件,它引用类XMLInputFactory而不是XMLOutputFactory。

如果您希望自己完成,那么不仅仅是重写FXMLLoader读取的类,因为该类中有很多反射(java.lang.Reflect)。

所以很长的答案可能是:您可以自己使用大量反射并从类名编写动态标记来完成,但不能保证您的fxml会给出预期的结果。

 类似资料:
  • 接口说明 保存场景 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 API地址 POST /wish3dearth/api/scene/v1.0.0/saveScene 是否需要登录 是 请求字段说明 参数 类型 请求类型 是否必须 说明 token string header 是 当前登录用户的TOKEN sceneId string formData

  • 接口说明 保存场景 如需调用,请访问 开发者文档 来查看详细的接口使用说明 该接口仅开放给已获取SDK的开发者 如开启https功能,请求地址的协议应改为https,如:https://www.example.com/wish3dearth/api/access/v1.0.0/getLicenseInfo API地址 POST /wish3dearth/api/scene/v1.0.0/saveS

  • 我需要这段java代码的帮助。我有三个场景登录场景,管理场景,和玩家场景。当我运行程序并输入用户和密码时,第二个应该打开。现在的问题是,第二个场景没有打开。它甚至连接到数据库,但第二个场景没有打开。我已经检查了代码,我看不出有什么问题。能不能请一些帮帮我,发生了什么事。

  • 当我运行该程序时,它加载第一个和第二个fxml,但继续显示第一个fxml(当它应该显示第二个时)。我可以使用相同代码的输入(即按钮)从第一个屏幕到第二个屏幕。 我尝试使用不同的加载器,每次设置场景时都使用。show()方法,但这些(或它们的许多变体)都不起作用。 我在调用方法时进行打印--这就是我确定它们被加载的方式(printline): null 相反,输出(在调试中,如果stage.show

  • 请用简单的语言回答以上问题。如果可能的话,为我提供一些如何使用JavaFX的好教程。

  • 问题内容: 我有一个应用程序,其中包含带有标题和菜单的HomeScene.fxml文件。HomeScene还具有dashboardPane,应在按下菜单按钮后对其进行动态更改。仪表板窗格内容应从另一个fxml文件加载,例如说“ FinancesPane.fxml”或“ SettingsPane.fxml”。 我正在尝试在HomeController中替换dashboardPane的内容: 我的Fi