【发布时间】:2017-02-21 17:23:53
【问题描述】:
我是法比奥。
我正在用 JavaFX 编写剧院的座位预订应用程序。我有128个圆圈作为座位,你可以看到here,占用的是红色,空闲的是绿色,用户选择的是橙色。
当用户点击“Prenota”按钮时,我将所选座位存储在 mySQL 数据库中,因此下次我打开应用程序时,它将显示为红色,而不是绿色。
剧院是通过窗格完成的,因此是否可以在不关闭应用程序的情况下刷新或重新加载整个public void start(Stage stage)以显示新座位?
谢谢大家。
PS:我的启动功能是这样的:
public void start(Stage stage) {
Group mainGroup= new Group(costoCliente,prenota,calcolaTotale,textMessaggi, //so on//);
Scene mainScene= new Scene(mainGroup,903,950);
mainScene.setFill(Paint.valueOf(configXML.parametriStile.coloreSfondo));
stage.setTitle("Theater Booking");
stage.setScene(mainScene);
stage.show();
}
【问题讨论】:
-
您想重新加载整个应用程序,因为有一条数据发生了变化...???我建议你重新设计你的应用程序。
-
我更喜欢座位类中的 void 函数 setRed(int number),但我不知道如何选择那个座位。 pane.getChildren().add(seat); -> 是将座位添加到窗格的代码,因此我无法访问单个座位。 @James_D
-
说真的,如果没有办法更新您需要的各个数据并让视图做出相应的响应,那么您确实需要重新设计应用程序的结构方式(至少是您拥有数据建模)。如果您不熟悉 MVC/MVP 设计,您可能应该阅读它,并使用这种应用程序结构。
-
您知道我的窗格影院功能是如何工作的,那么我可以像您对 reservedProperty 所做的那样在那里工作吗? @James_D