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();
}
# 1 楼答案
HBox
具有HBox元素之间的空格的间距属性。这是否足够https://api.javafx.dev/javafx.graphics/javafx/scene/layout/HBox.html#spacingProperty
您还可以控制整个HBox的总边距(使用插图)。如果目标是右侧,则可以使用插图设置右侧
https://api.javafx.dev/javafx.graphics/javafx/scene/layout/HBox.html#setMargin(javafx.scene.Node,javafx.geometry.Insets)
# 2 楼答案
正如@Phil Freihoff所提到的,您可以使用
hBox.setSpacing()
设置间距,使用静态方法HBox.setMargin()
设置边距:不设置间距或边距的输出:![](https://i.stack.imgur.com/PbrAe.png)
输出设置间距和边距:![](https://i.stack.imgur.com/e5klV.png)