Я пытаюсь изучить Javafx для класса, который я посещаю. У меня много трудностей при переходе от шаблонов HTML + ERB к инфраструктуре Javafx (я являюсь разработчиком Rails).
По какой-то причине я не могу центрировать узел Label в области сетки. Вот мой start
метод:
@Override
public void start(Stage stage) throws Exception {
GridPane root = new GridPane();
FlowPane leftbanner = new FlowPane();
leftbanner.setPrefWidth(200);
String bgStyle = "-fx-background-color: lightblue;"
+ "-fx-background-radius: 0%;"
+ "-fx-background-inset: 5px;";
leftbanner.setStyle(bgStyle);
root.add(leftbanner, 0, 0, 1, 1);
root.add(createGridPane(), 1, 0, 1, 1);
Scene scene = new Scene(root, 700, 500);
stage.setTitle("Recommendify");
stage.setScene(scene);
stage.show();
}
Я использую метод createGridPane
для создания своего приложения. Вот содержание этого метода, который включает мои попытки центрировать ярлык:
public GridPane createGridPane() {
GridPane grid = new GridPane();
grid.setPadding(new Insets(10));
grid.setHgap(10);
grid.setVgap(10);
Text txt = new Text("Recommendify");
txt.setFont(Font.font("Dialog", FontWeight.BOLD, 12));
GridPane.setHalignment(txt, HPos.CENTER);
grid.add(txt, 0, 0, 1, 1);
grid.add(new Separator(), 0, 1, 3, 1);
return grid;
}
Я также попробовал эти решения, размещенные здесь: Выравнивание JavaFX метки в GridPane
Нужно ли бросать этот узел Label в контейнер, чтобы центрировать его в GridPane? Как HBox или VBox?