Как расположить объекты на экране JavaFX
У меня есть панель вкладок(TabPane) которую я помещаю на сцену. В эту панель я добавляю вкладку, которую беру из метода:
public static Tab fileManagementTab (){
Tab tab = new Tab("FileManagementTab");
TextField textField = new TextField();
Button button = new Button("Submit");
button.setLayoutX(400);
button.setLayoutY(400);
textField.setLayoutX(200);
textField.setLayoutY(200);
Group group = new Group(textField,button);
tab.setContent(group);
return tab;
}
Сам метод start:
@Override
public void start(Stage primaryStage) throws Exception {
TabPane tabPane = new TabPane();
tabPane.getTabs().add(GraphicController.fileManagementTab());
Scene scene = new Scene(tabPane,1200, 800);
primaryStage.setTitle("Title");
primaryStage.setScene(scene);
primaryStage.show();
}
Как видно в методе fileManagementTab я задаю расположение объектов textField и button с помощью метода setLayoutX,setLayoutY. Но при запуске программы я вижу:

Кстати так происходит только если я меняю положение 2+ объектов. То есть если я буду задавать положение только текстового поля или только кнопки, они будут именно там где мне нужно. Собственно вопрос, почему не работает как должно и как сделать правильно?
Ответы (1 шт):
Group не использует размещение (Layout) для его подкомпонентов . Все компоненты находятся в координатах (0,0). Возьмите контейнер Pane, в нем все размещается по координатной сетке.