JavaFX节点部分边框

Rob*_*ert 5 css java javafx border

有一个Node例如VBox我试图添加一个边框,我有两种方法可以想到 - 使用CSS或使用新的Border()等.

如何删除部分边框?即删除边框的底部

Lau*_*ala 14

none在 javafx 13 上不起作用。我尝试将其更改为hidden并且它有效。

.root { /* modify the selector according to your needs */
    -fx-border-style: solid solid hidden solid;
    -fx-border-width: 5;
    -fx-border-color: red;
}
Run Code Online (Sandbox Code Playgroud)


fab*_*ian 11

您可以为不同侧面的边框指定不同的样式

使用边框

@Override
public void start(Stage primaryStage) {
    Region root = new Region();
    root.setBorder(new Border(new BorderStroke(Color.RED, Color.RED, Color.RED, Color.RED,
            BorderStrokeStyle.SOLID, BorderStrokeStyle.SOLID, BorderStrokeStyle.NONE, BorderStrokeStyle.SOLID,
            CornerRadii.EMPTY, new BorderWidths(5), Insets.EMPTY)));

    Scene scene = new Scene(root, 300, 300);

    primaryStage.setScene(scene);
    primaryStage.show();
}
Run Code Online (Sandbox Code Playgroud)

使用内联css

root.setStyle("-fx-border-style: solid solid none solid; -fx-border-width: 5; -fx-border-color: red;");
Run Code Online (Sandbox Code Playgroud)

使用css样式表

.root { /* modify the selector according to your needs */
    -fx-border-style: solid solid none solid;
    -fx-border-width: 5;
    -fx-border-color: red;
}
Run Code Online (Sandbox Code Playgroud)