我今天遇到了一個網格不符合我想要的方式。 我怎樣才能以我想要的方式對齊它?無法讓這個網格正確對齊
示例代碼+:
我想在第3列中的第I部分標記爲紅色到消失,並使其最終在我的形象結束。
private GridPane login(final BorderPane rootLayout) {
// Create a grid layout
final GridPane grid = new GridPane();
grid.setAlignment(Pos.CENTER);
grid.setHgap(10);
grid.setVgap(10);
grid.setPadding(new Insets(25, 25, 25, 50));
// Set header text and add it to the grid
Text sceneTitle = new Text("Welcome");
sceneTitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 25));
grid.add(sceneTitle, 0, 0, 2, 1);
// Create username label and textfield and add it to the grid
Label labelUser = new Label("Username: ");
grid.add(labelUser, 0, 1);
TextField textUser = new TextField();
grid.add(textUser, 1, 1);
// Create password label and field and add it to the grid
Label labelPass = new Label("Password: ");
grid.add(labelPass, 0, 2);
PasswordField textPass = new PasswordField();
grid.add(textPass, 1, 2);
// Create a button to login and add it to the grid
Button buttonLogin = new Button("Login");
HBox hbButton = new HBox(10);
hbButton.setAlignment(Pos.BOTTOM_RIGHT);
hbButton.getChildren().add(buttonLogin);
grid.add(hbButton, 1, 4);
// Create kone logo and add it to the bottom of the layout
ImageView imageKone = new ImageView(
new Image(MainWindow.class.getResourceAsStream("Resources/konecranes.png")));
grid.add(imageKone, 0, 7, 3, 2);
// Create capman logo and add it to the top_right
ImageView imageCapman = new ImageView(
new Image(MainWindow.class.getResourceAsStream("Resources/Capman.png")));
// Login button actionHandler, make it do login and edit root layout.
buttonLogin.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent e) {
grid.setGridLinesVisible(!grid.isGridLinesVisible());
}
});
return grid;
}
在此先感謝, 賈斯珀。
我一直試圖添加ColumConstraints之前添加2列的節點,然後設置每列maxWidth這似乎並沒有影響第二列壽,它也是第一列的問題。 :-( – Taerus
我也很好奇你的問題,也許下面的地址可以給你帶來一些幫助:http://docs.oracle.com/javafx/2/api/javafx/scene/layout/ColumnConstraints.html http:/ /www.javacodegeeks.com/2012/07/javafx-20-layout-panes-gridpane.html – Loa
感謝您的回覆,我通過閱讀GridPane靜態方法使用第二個鏈接獲得了成功。我使用GridPane.setMargin()來完成它;雖然它並不完全以這種方式居中我的網格,但也許我可以從外部添加一個邊距以及將它推到中心 – Taerus