从零开始学习JavaFX(17) 控件篇之Separator

顾名思义,Separator就是分割线,分为横向分割线纵向分割线

下面我们来创建一个HBox和一个VBox,来看看分割线的效果:

import javafx.application.Application;
import javafx.geometry.Orientation;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Separator;
import javafx.scene.layout.*;
import javafx.stage.Stage;

public class Main extends Application {
    @Override
    public void start(Stage primaryStage) throws Exception{
        AnchorPane root = new AnchorPane();
        VBox vBox = new VBox(10);
        Button button1 = new Button("VButton1");
        Button button2 = new Button("VButton2");
        Separator separator = new Separator();
        Button button3 = new Button("VButton3");
        vBox.getChildren().addAll(button1,button2,separator,button3);

        HBox hBox = new HBox(10);
        Button hButton1 = new Button("HButton1");
        Button hButton2 = new Button("HButton2");
        Separator hSeparator = new Separator();
        hSeparator.setOrientation(Orientation.VERTICAL);
        Button hButton3 = new Button("HButton3");
        hBox.getChildren().addAll(hButton1,hButton2,hSeparator,hButton3);
        hBox.setLayoutX(100);

        root.getChildren().addAll(vBox,hBox);
        primaryStage.setTitle("Separator的使用");
        primaryStage.setScene(new Scene(root, 500, 275));
        primaryStage.show();
    }
    public static void main(String[] args) {
        launch(args);
    }
}

我们在这里创建了一个HBox包含3个按钮和一个分割线,以及一个VBox包含3个按钮和一个分割线。分割线默认为横向分割线,可以通过setOrientation来设置分割线的方向。

运行效果如下:

Separator可以用在HBoxVBoxGridPane以及菜单项等一系列的地方,是很常用的分割线。

另外,Separator也可以通过CSS文件来更改样式。

我们首先创建一个CSS文件separator_style.css:

.separator .line {
    -fx-border-color: #ff0528;
    -fx-border-width: 1;
}

接着,我们将样式文件应用到程序中:

root.getStylesheets().add(getClass().getResource("separator_style.css").toString());

这里要注意,根据当前获取文件的方法,separator_style.css文件和Main的java文件要在一个目录。

运行效果如下:

这样我们就知道了Separator的用法了。

那么这一章就到此结束了,下一章再见。

发表评论

电子邮件地址不会被公开。