Я новичок в Java Fx, используя Netbeans 7.3.1. Я экспериментирую с новыми вещами с Gridpane, и я просто хочу поместить Gridpane в другое положение, отличное от левого верхнего положения окна. root.getChildren().add(gridpane);
добавляет gridpane в самый верхний левый угол окна. Как я могу поместить Gridpane в другое место окна без добавления нового дочернего элемента или root! Мой корень - это всего лишь группа, а текущий код просто перекрывает gridpane с Menubar .. Мой полный код это!Позиционирование Gridpane в Java Fx
public class Menu extends Application {
@Override
public void start(Stage primaryStage){
Group root = new Group();
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Hello World!");
MenuBar menuBar = new MenuBar();
javafx.scene.control.Menu m = new javafx.scene.control.Menu("File");
m.getItems().add(new MenuItem("New"));
m.getItems().add(new SeparatorMenuItem());
m.getItems().add(new MenuItem("Exit"));
menuBar.getMenus().add(m);
javafx.scene.control.Menu tools = new javafx.scene.control.Menu("Cameras");
tools.getItems().add(CheckMenuItemBuilder.create()
.text("Show Camera 1")
.selected(false)
.build());
menuBar.getMenus().add(tools);
root.getChildren().add(menuBar);
GridPane gridpane = new GridPane();
gridpane.setPadding(new Insets(5));
gridpane.setHgap(5);
gridpane.setVgap(5);
Label fNameLbl = new Label("First Name");
TextField fNameFld = new TextField();
Label lNameLbl = new Label("First Name");
TextField lNameFld = new TextField();
Button saveButt = new Button("Save");
// First name label
GridPane.setHalignment(fNameLbl, HPos.RIGHT);
gridpane.add(fNameLbl, 0, 0);
// Last name label
GridPane.setHalignment(lNameLbl, HPos.RIGHT);
gridpane.add(lNameLbl, 0, 1);
// First name field
GridPane.setHalignment(fNameFld, HPos.LEFT);
gridpane.add(fNameFld, 1, 0);
// Last name field
GridPane.setHalignment(lNameFld, HPos.LEFT);
gridpane.add(lNameFld, 1, 1);
// Save button
GridPane.setHalignment(saveButt, HPos.RIGHT);
gridpane.add(saveButt, 1, 2);
root.getChildren().add(gridpane);
primaryStage.setScene(scene);
primaryStage.show();
}
Вместо простой группы в качестве корня вы можете использовать [одну из встроенных макетных панелей] (http://docs.oracle.com/javafx/2/layout/builtin_layouts.htm), например VBox , – assylias
Благодарим вас за этот сайт! Это решение проблемы перекрытия! –