如何创建具有两个拇指的 JavaFX 滑块?
通常,滑块是一个显示连续值范围的组件。此范围中包含一个跟踪,其上显示数值。在跟踪器上,有一个指向数字的拇指。你可以提供滑块的最大值、最小值和初始值。
JavaFX 提供的滑块仅包含一个拇指,如果你想创建一个包含两个拇指的滑块,你需要依赖名为 org.controlsfx.control 的外部库。
以下是此库的 maven 依赖项 -
<dependency> <groupId>org.controlsfx</groupId> <artifactId>controlsfx</artifactId> <version>11.0.1</version> </dependency>
此包的**RangeSlider** 类是**JavaFXSlider**,但具有两个拇指。因此,要使用它,请实例化该类,添加所需的属性,并将其添加到 Node 对象。
示例
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) { //Instantiating the RangeSlider class RangeSlider slider = new RangeSlider(0, 100, 10, 90); //Setting the slider properties slider.setShowTickLabels(true); slider.setShowTickMarks(true); slider.setMajorTickUnit(25); slider.setBlockIncrement(10); //VBox to arrange circle and the slider VBox vbox = new VBox(); vbox.setPadding(new Insets(75)); vbox.setSpacing(150); vbox.getChildren().addAll(slider); //Preparing the scene Scene scene = new Scene(vbox, 600, 200); stage.setTitle("Slider Example"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }
输出
广告