编写一个JavaFX程序,在网格面板中,第一行放置标签和文本框,第二行设置文本区和按钮。
时间: 2024-10-04 19:02:57 浏览: 40
在JavaFX中,可以使用`GridPane`布局管理器来构建这样的界面结构。下面是一个简单的示例,展示了如何创建一个包含两行的网格面板,每行分别包含标签、文本框、文本区和按钮。
```java
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.text.TextArea;
import javafx.stage.Stage;
public class GridPanelExample extends Application {
@Override
public void start(Stage primaryStage) {
// 创建一个GridPane
GridPane grid = new GridPane();
grid.setPadding(new Insets(10, 10, 10, 10)); // 设置内边距
grid.setHgap(10); // 水平间隙
grid.setVgap(10); // 垂直间隙
// 第一行
Label label1 = new Label("Label 1");
TextField textField1 = new TextField();
grid.add(label1, 0, 0); // 行索引0, 列索引0
grid.add(textField1, 1, 0); // 假设文本框宽度大于标签,所以列索引1
// 第二行
TextArea textArea = new TextArea();
Button button = new Button("Button");
grid.add(textArea, 0, 1);
grid.add(button, 1, 1);
// 设置场景
Scene scene = new Scene(grid, 300, 400, Color.WHITE);
// 设置窗口
primaryStage.setTitle("Grid Pane Example");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
```
在这个示例中,我们首先创建了`GridPane`,设置了边距和间距。然后分别为每一行添加了相应的标签、文本框、文本区和按钮,并指定了它们在网格中的位置(行索引和列索引)。最后设置了一个场景并将整个布局展示在舞台上。
阅读全文