【发布时间】:2016-02-10 07:12:57
【问题描述】:
我在 JavaFX 的一个阶段中创建了一个 Button(命名为 test)。然后,当您按下此按钮时,我会显示一个对话框,其中还有另一个按钮(目前这并不重要)。现在我希望对话框可以让我冻结整个应用程序。我的意思是,我不应该回到上一阶段,我可以这样做,只需用“X”关闭窗口。
private TextInputDialog dialog;
private Text actionStatus;
private final String defaultVal = "Default text";
private static final String titleTxt = "Esempio JavaFx Dialog";
test.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent e) {
Stage dialogstage = new Stage();
dialogstage.setTitle(titleTxt);
// Window label
Label label = new Label("Text Input Dialog");
label.setTextFill(Color.DARKBLUE);
label.setFont(Font.font("Calibri", FontWeight.BOLD, 36));
HBox labelHb = new HBox();
labelHb.setAlignment(Pos.CENTER);
labelHb.getChildren().add(label);
// Button
Button textbtn = new Button("Premi");
// textbtn.setOnAction(new TextButtonListener());
HBox buttonHb = new HBox(10);
buttonHb.setAlignment(Pos.CENTER);
buttonHb.getChildren().addAll(textbtn);
// Status message text
actionStatus = new Text();
actionStatus.setFont(Font.font("Calibri", FontWeight.NORMAL, 20));
actionStatus.setFill(Color.FIREBRICK);
// Vbox
VBox vbox = new VBox(30);
vbox.setPadding(new Insets(25, 25, 25, 25));;
vbox.getChildren().addAll(labelHb, buttonHb, actionStatus);
// Scene
Scene scene = new Scene(vbox, 500, 250); // w x h
dialogstage.setScene(scene);
dialogstage.show();
// Initial dialog
// displayTextDialog();
textbtn.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent e) {
}
});
}
});
【问题讨论】:
-
您在寻找
dialogStage.initModality(Modality.APPLICATION_MODAL);吗? -
是的,我正在寻找那个@James_D :)。