有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java JavaFX将边距添加到矩形形状

在下面的布局中,如何为每个矩形添加右边距。例如,是否有任何方法允许添加保证金

    @Override
    public void start(Stage stage) throws Exception {

        HBox hBox = new HBox();
        Rectangle rect1 = new Rectangle(100, 100, Color.BLACK);
        Rectangle rect2 = new Rectangle(100, 100, Color.GREEN);
        Rectangle rect3 = new Rectangle(100, 100, Color.YELLOW);

        hBox.getChildren().addAll(rect1, rect2, rect3);
        Scene scene = new Scene(hBox, 500, 500);
        stage.setScene(scene);
        stage.show();

    }

共 (2) 个答案

  1. # 2 楼答案

    正如@Phil Freihoff所提到的,您可以使用hBox.setSpacing()设置间距,使用静态方法HBox.setMargin()设置边距:

        Rectangle rect1 = new Rectangle(100, 100, Color.BLACK);
        Rectangle rect2 = new Rectangle(100, 100, Color.GREEN);
        Rectangle rect3 = new Rectangle(100, 100, Color.YELLOW);
        
        HBox hBox = new HBox(rect1, rect2, rect3);
        
        // Space between rectangles
        hBox.setSpacing(20);
        
        // Margins
        HBox.setMargin(rect1, new Insets(30, 0, 30, 30));
        HBox.setMargin(rect2, new Insets(30, 0, 30, 0));
        HBox.setMargin(rect3, new Insets(30, 30, 30, 0));
    

    不设置间距或边距的输出:

    输出设置间距和边距: