ウィンドウの内容に合わせてウィンドウのサイズを変更したい。Swingにはpack()
方法があります。JavaFXでこれを行うための同様の方法はありますか?
私がやろうとしているのは、確認ダイアログを作成することです。ダイアログを作成するときは、内容よりも幅が広いので、packメソッドのようなものが必要かどうかを自問していました。
これが起こっていることのスクリーンショットです:
そしてここに私のコードがあります:
mainClass.getPrimaryStage().setOnCloseRequest(new EventHandler<WindowEvent>() {
@Override
public void handle(final WindowEvent e) {
e.consume();
final Stage dialog = new Stage();
dialog.setTitle("Confirm Before Exit");
dialog.setResizable(false);
dialog.initOwner(mainClass.getPrimaryStage());
dialog.initModality(Modality.APPLICATION_MODAL);
FlowPane buttons = new FlowPane(10,10);
buttons.setAlignment(Pos.CENTER);
Button yes = new Button("Yes");
Button no = new Button("No");
buttons.getChildren().addAll(yes, no);
VBox box = new VBox();
box.setAlignment(Pos.CENTER);
box.setSpacing(10);
box.getChildren().addAll(new Label("Do you really want to exit?"), buttons);
yes.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
Platform.exit();
}
});
no.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
dialog.close();
}
});
Scene s = new Scene(box);
dialog.setScene(s);
dialog.show();
}
});
JOptionPane
彼らがJavaFXのようなものをすぐに実装することを願っています!これは私がすべきことではありません、それはとても基本的です...