如何使用 JavaFX 创建 border 窗格?


为应用程序创建所有必需的节点后,可使用布局对其进行排列。其中,布局是计算给定空间中对象位置的过程。JavaFX 在 javafx.scene.layout 包中提供各种布局。

Border 窗格

在此布局中,节点排列在顶部、中间、底部、左侧和右侧位置。可以通过实例化javafx.scene.layout.BorderPane 类在应用程序中创建 border 窗格。

此类(节点类型)具有五个属性,分别指定窗格中的位置,即顶部、底部、右侧、左侧、中间。可以使用setTop()、setBottom()、setRight()、setleft() 和 setCenter()将节点设置为这些属性的值。

可以使用 setPrefSize() 方法设置 border 窗格的大小。要向此窗格添加节点,可以将它们作为构造函数的参数传递,或者将其添加到窗格的可观察列表中,如下所示 −

getChildren().addAll();

示例

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.BorderPane;
import javafx.stage.Stage;
public class BorderPaneExample extends Application {
   public void start(Stage stage) {
      //Creating buttons
      Button left = new Button("Left");
      left.setPrefSize(200, 100);
      Button right = new Button("Right");
      right.setPrefSize(200, 100);
      Button top = new Button("Top");
      top.setPrefSize(595, 100);
      Button bottom = new Button("Buttom");
      bottom.setPrefSize(595, 100);
      Button center = new Button("Center");
      center.setPrefSize(200, 100);
      //Creating the border pane
      BorderPane pane = new BorderPane();
      //Setting the top, bottom, center, right and left nodes to the pane
      pane.setTop(top);
      pane.setBottom(bottom);
      pane.setLeft(left);
      pane.setRight(right);
      pane.setCenter(center);
      //Setting the Scene
      Scene scene = new Scene(pane, 595, 300);
      stage.setTitle("Border Pane");
      stage.setScene(scene);
      stage.show();
   }
   public static void main(String args[]){
      launch(args);
   }
}

输出

更新于:19-5-2020

761 次浏览

开启你的职业生涯

完成本课程以获取认证

开始
广告