如何在JavaFX中使用CSS设置分隔符的样式?

分隔符是水平或垂直线,用于分隔应用程序的UI元素。在JavaFX中,javafx.scene.control.Separator类代表一个分隔符,要创建一个分隔符,您需要实例化该类。您可以使用CSS控制分隔符的外观。

通过创建CSS文件并在应用程序中启用它,可以创建分隔符的替代样式。完成后,创建的样式将应用于应用程序中的所有分隔符。

setStyle()方法接受以字符串格式的CSS和指定的样式应用到分离器。使用此方法,您可以增强分隔符的可视化,如下所示:

//使用CSS设置分隔符的样式

sep.setStyle("-fx-border-color:#D2691E; -fx-border-width:2");

示例

import javafx.application.Application;

import javafx.geometry.HPos;

import javafx.geometry.Insets;

import javafx.geometry.Orientation;

import javafx.scene.Scene;

import javafx.scene.control.CheckBox;

import javafx.scene.control.Label;

import javafx.scene.control.Separator;

import javafx.scene.layout.HBox;

import javafx.scene.layout.VBox;

import javafx.scene.paint.Color;

import javafx.scene.text.Font;

import javafx.scene.text.FontPosture;

import javafx.scene.text.FontWeight;

import javafx.stage.Stage;

public class StylingSeparator extends Application {

   public void start(Stage stage) {

      //创建复选框

      CheckBox checkBox1 = new CheckBox("Java");

      CheckBox checkBox2 = new CheckBox("Python");

      CheckBox checkBox3 = new CheckBox("C++");

      CheckBox checkBox4 = new CheckBox("MongoDB");

      CheckBox checkBox5 = new CheckBox("Neo4J");

      CheckBox checkBox6= new CheckBox("Casandra");

      //创建标签

      Label label = new Label("选择技术:");

      Font font = Font.font("verdana", FontWeight.BOLD, FontPosture.REGULAR, 12);

      label.setFont(font);

      //创建一个分隔符

      Separator sep = new Separator();

      sep.setOrientation(Orientation.VERTICAL);

      sep.setMaxHeight(75);

      sep.setHalignment(HPos.CENTER);

      //使用CSS设置分隔符的样式

      sep.setStyle("-fx-border-color:#D2691E; -fx-border-width: 2;");

      //将复选框和分隔符添加到窗格中

      VBox box1 = new VBox(5);

      box1.setPadding(new Insets(5, 5, 5, 50));

      box1.getChildren().addAll(checkBox1, checkBox2, checkBox3);

      VBox box2 = new VBox(5);

      box2.setPadding(new Insets(5, 5, 5, 10));

      box2.getChildren().addAll(checkBox4, checkBox5, checkBox6);

      HBox root = new HBox(box1, box2);

      root.getChildren().add(1,sep);

      //设置舞台

      Scene scene = new Scene(root, 595, 130, Color.BEIGE);

      stage.setTitle("Separator Example");

      stage.setScene(scene);

      stage.show();

   }

      public static void main(String args[]){

      launch(args);

   }

}

输出结果


以上是 如何在JavaFX中使用CSS设置分隔符的样式? 的全部内容, 来源链接: utcz.com/z/340934.html

回到顶部