package border;
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.layout.*;
import javafx.scene.paint.Color;
import javafx.scene.text.Text;
import javafx.stage.Stage;
public class BorderDemo extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
Text text = new Text("test");
HBox root = new HBox();
root.getChildren().add(text);
root.setPadding(new Insets(50));
// root.setStyle("-fx-border-color: red orange black green;-fx-border-width: 50 40 20 10;-fx-border-style: solid dashed dotted dotted;");
// root.setStyle("-fx-border-width: 0 0 10 0;-fx-border-style: solid;-fx-border-color: red");
BorderStroke borderStroke = new BorderStroke(null,null, Color.BLACK,null, null,null,BorderStrokeStyle.SOLID,null,null, BorderWidths.DEFAULT,new Insets(50));
root.setBorder(new Border(borderStroke));
Scene scene = new Scene(root, 500, 300);
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
效果圖
如果把style中的空格改為逗號,即root.setStyle("-fx-border-color: red,orange,black,green;...")
效果圖
看下官方文檔,如果四個邊框分開設置,就是要用逗號,實際卻是用空格隔開
-fx-border-color
A series of paint values or sets of four paint values, separated by commas. For each item in the series, if a single paint value is specified, then that paint is used as the border for all sides of the region; and if a set of four paints is specified, they are used for the top, right, bottom, and left borders of the region, in that order. If the border is not rectangular, only the first paint value in the set is used.