JavaFX 向矩形形状添加边距
JavaFX add margin to Rectangle shape
在下面的布局中,如何为每个矩形添加右边距。例如,有什么方法可以增加保证金吗?
@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();
}
HBox
在 HBox 元素之间有 spacing 属性 for space。这够了吗?
https://api.javafx.dev/javafx.graphics/javafx/scene/layout/HBox.html#spacingProperty
您还可以控制整个 HBox 的整体边距(使用插图)。使用插图,您可以设置右侧,如果这是目标的话。
如@Phil Freihofner 所述,您可以使用 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));
不设置间距或边距的输出:
输出设置间距和边距:
在下面的布局中,如何为每个矩形添加右边距。例如,有什么方法可以增加保证金吗?
@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();
}
HBox
在 HBox 元素之间有 spacing 属性 for space。这够了吗?
https://api.javafx.dev/javafx.graphics/javafx/scene/layout/HBox.html#spacingProperty
您还可以控制整个 HBox 的整体边距(使用插图)。使用插图,您可以设置右侧,如果这是目标的话。
如@Phil Freihofner 所述,您可以使用 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));
不设置间距或边距的输出:
输出设置间距和边距: