Teniendo un nodo, por ejemplo, VBox, estoy tratando de agregar un borde y hay 2 formas en las que puedo pensar: usar css o usar un nuevo borde (), etc.
¿Cómo puedo eliminar parte del borde? es decir, eliminar la parte inferior del borde
Puede especificar diferentes estilos para los bordes en diferentes lados
@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(); } root.setStyle("-fx-border-style: solid solid none solid; -fx-border-width: 5; -fx-border-color: red;"); .root { /* modify the selector according to your needs */ -fx-border-style: solid solid none solid; -fx-border-width: 5; -fx-border-color: red; }none no funciona en javafx 13. Intenté cambiarlo a hidden y funciona.
.root { /* modify the selector according to your needs */ -fx-border-style: solid solid hidden solid; -fx-border-width: 5; -fx-border-color: red; }Establecer border-width en 0 funcionó (JavaFX 17): Ejemplo:
#header { -fx-border-width: 0 0 2px 0; -fx-border-color: black; -fx-border-style: solid; }Aquí puede obtener el borde solo en la parte inferior: orden: arriba, derecha, abajo, izquierda.