Java FX多Windows应用程序

时间:2015-02-10 23:10:45

标签: java swing javafx

如何设计大型应用程序(有很多窗口,可以说用户管理,角色,付款等)。我是一名网络开发人员,我曾经在不同的html文件中开发不同的屏幕。我想知道如何在不同的文件中分割Windows代,而不是只有一个巨大的Application类。 提前谢谢..

2 个答案:

答案 0 :(得分:3)

这个问题有点过于宽泛而无法彻底回答,但我仍然认为在这里提供部分答案可能会有用。

对于Banislav控制可交换窗格(不使用FXML)的超链接策略的实现,请参阅相关问题:How to have menus in java desktop application

对于用于切换窗格的基于FXML的小型框架,请参阅:Loading new fxml in the same scene以及关联的sample code。请注意,该示例适用于小型应用,对于大型应用,则首选更严格的框架。

上面列出的小框架的下一步将是afterburner.fx,它是"一个简约(3类)JavaFX MVP框架"。即使很小,afterburner.fx也可能足以用作中型应用程序的核心。您可以找到使用名为airhacks-control

对于更多涉及的内容,您可以研究SceneBuilder and SceneBuilderKit的来源。 SceneBuilder是一个用JavaFX编写的开源设计工具。理解和调整代码对于来自Web背景的人来说可能具有挑战性,因为它的实现与传统的Web应用程序有很大不同。

对于非常大的应用程序,将应用程序基于NetBeans RCP等功能齐全的平台可能是一种首选方法,但是,截至目前,这可能是一项艰巨而艰巨的任务。需要混合多个框架,而不是纯粹用JavaFX编写所有内容。

答案 1 :(得分:2)

在JavaFX中,您可以使用与Web开发中类似的方法。

使用BorderPane作为根窗格。

创建主菜单

您可以将MenuBar与菜单和MenuItems一起使用。您也可以在屏幕左侧使用TreeViewListView。要在左侧放置TreeView / ListView,您可以使用BorderPane并使用setLeft将其设置为左侧。

我更喜欢的方法是使用HyperLink控件。将多个HyperLink's添加到VBox,然后再将其设置在BorderPane的左侧。点击后,他们将处理在BorderPane中心设置所需表单的事件。

enter image description here