JavaFX | StackPane类

StackPane类是JavaFX的一部分。StackPane类以堆栈的形式布置其子类。新节点放置在StackPane中上一个节点的顶部。StackPane类继承 窗格类 .

null

类的构造函数:

  1. StackPane() :创建一个新的空堆栈窗格。
  2. StackPane(节点…c) :创建具有指定节点的新StackPne。

常用方法:

方法 解释
getAlignment() 返回堆栈窗格的对齐方式。
getAlignment(节点c) 返回节点的对齐方式。
getMargin(节点c) 返回节点的插入。
设置对齐(节点n,位置v) 设置作为StackPane一部分的节点的对齐方式。
设置对齐(位置v) 设置堆栈窗格的对齐方式。
setMargin(节点n,插图v) 设置作为StackPane一部分的节点的边距。

下面的程序演示了StackPane类的使用:

  1. Java程序创建StackPane,添加圆形、标签、矩形并将其添加到舞台: 在这个程序中,我们将创建一个名为 标签 ,一个名为 长方形 还有一个叫 圆圈 。然后使用 setFont() 作用现在使用 setFill() 作用然后我们将创建一个名为 堆叠窗格 并添加矩形、圆形和标签。创建场景并将“堆栈”窗格添加到场景中。将此场景添加到舞台并调用 show() 函数来显示最终结果。

    // Java Program to create a StackPane,
    // add circle, label, rectangle
    // and add it to the stage
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.event.ActionEvent;
    import javafx.scene.paint.*;
    import javafx.scene.canvas.*;
    import javafx.scene.text.*;
    import javafx.scene.Group;
    import javafx.scene.shape.*;
    public class StackPane_1 extends Application {
    // launch the application
    public void start(Stage stage)
    {
    try {
    // set title for the stage
    stage.setTitle( "StackPane" );
    // create a label
    Label label = new Label( "this is StackPane example" );
    // set Font for label
    label.setFont( new Font( 30 ));
    // create a circle
    Circle circle = new Circle( 100 , 100 , 70 );
    // set fill for  the circle
    circle.setFill(Color.RED);
    // create Rectangle
    Rectangle rectangle = new Rectangle( 100 , 100 , 180 , 160 );
    // set fill for rectangle
    rectangle.setFill(Color.BLUE);
    // create a stack pane
    StackPane stack_pane = new StackPane(rectangle, circle, label);
    // create a scene
    Scene scene = new Scene(stack_pane, 400 , 300 );
    // set the scene
    stage.setScene(scene);
    stage.show();
    }
    catch (Exception e) {
    System.out.println(e.getMessage());
    }
    }
    // Main Method
    public static void main(String args[])
    {
    // launch the application
    launch(args);
    }
    }

    
    

    输出:

    图片[1]-JavaFX | StackPane类-yiteyi-C++库

  2. Java程序创建StackPane,添加圆形、标签、矩形,然后设置StackPane的对齐方式,并将其添加到舞台: 在这个程序中,我们将创建一个名为 标签 ,一个名为 长方形 还有一个叫 圆圈 。然后使用 setFont() 作用使用 setFill() 作用现在创建一个名为 堆叠窗格 并添加矩形、圆形和标签。使用设置堆栈窗格的对齐方式 setAlignment() 作用创建场景并将“堆栈”窗格添加到场景中。最后,将这个场景添加到舞台上,并调用 show() 函数来显示结果。

    // Java Program to create a StackPane,
    // add the circle, label, rectangle and
    // then set the alignment of the StackPane
    // and add it to the stage
    import javafx.application.Application;
    import javafx.scene.Scene;
    import javafx.scene.control.*;
    import javafx.scene.layout.*;
    import javafx.stage.Stage;
    import javafx.geometry.*;
    import javafx.scene.paint.*;
    import javafx.scene.canvas.*;
    import javafx.scene.text.*;
    import javafx.scene.Group;
    import javafx.scene.shape.*;
    public class StackPane_2 extends Application {
    // launch the application
    public void start(Stage stage)
    {
    try {
    // set title for the stage
    stage.setTitle( "StackPane" );
    // create a label
    Label label = new Label( "this is StackPane example" );
    // set Font for label
    label.setFont( new Font( 30 ));
    // create a circle
    Circle circle = new Circle( 100 , 100 , 70 );
    // set fill for  the circle
    circle.setFill(Color.RED);
    // create Rectangle
    Rectangle rectangle = new Rectangle( 100 , 100 , 180 , 160 );
    // set fill for rectangle
    rectangle.setFill(Color.BLUE);
    // create a stack pane
    StackPane stack_pane = new StackPane(rectangle, circle, label);
    // set alignement for the stack pane
    stack_pane.setAlignment(Pos.TOP_CENTER);
    // create a scene
    Scene scene = new Scene(stack_pane, 400 , 300 );
    // set the scene
    stage.setScene(scene);
    stage.show();
    }
    catch (Exception e) {
    System.out.println(e.getMessage());
    }
    }
    // Main Method
    public static void main(String args[])
    {
    // launch the application
    launch(args);
    }
    }

    
    

    输出:

    图片[2]-JavaFX | StackPane类-yiteyi-C++库

    注: 以上程序可能无法在联机IDE中运行,请使用脱机编译器。

    参考: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/layout/StackPane.html

© 版权声明
THE END
喜欢就支持一下吧
点赞15 分享