Slider mặc định JavaFX chỉ có một thumb. Để có hai thumb, dùng thư viện bên ngoài org.controlsfx.control.RangeSlider.
Dependency Maven:
<dependency>
<groupId>org.controlsfx</groupId>
<artifactId>controlsfx</artifactId>
<version>11.0.1</version>
</dependency>
RangeSlider là Slider với hai thumb. Khởi tạo new RangeSlider(min, max, lowValue, highValue), cấu hình tick, thêm vào layout.
Ví dụ
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.layout.VBox;
import javafx.stage.Stage;
import org.controlsfx.control.RangeSlider;
public class SliderTwoThumbs extends Application {
public void start(Stage stage) {
RangeSlider slider = new RangeSlider(0, 100, 10, 90);
slider.setShowTickLabels(true);
slider.setShowTickMarks(true);
slider.setMajorTickUnit(25);
slider.setBlockIncrement(10);
VBox vbox = new VBox();
vbox.setPadding(new Insets(75));
vbox.setSpacing(150);
vbox.getChildren().addAll(slider);
Scene scene = new Scene(vbox, 600, 200);
stage.setTitle("Slider Example");
stage.setScene(scene);
stage.show();
}
public static void main(String args[]) {
launch(args);
}
}
Kết quả:
