Spinner 控件的使用 20230208
基本功能
- Spinner 是一个能够实现按照步长修改数字的控件。
- 是在 JavaFX 后续版本之中添加的控件,无法直接使用在 JavaFX Scene Builder 2.0 之中。
- Spinner 支持通过右侧的上下按键修改数值,并支持按键按下的连续滚动。
- Spinner 支持编辑模式。可以直接通过修改文本框之中的数值修改实际数据,方便数值的大范围调整。
- Spinner 支持最小值和最大值。
- Spinner 支持自定义 Converter。能够根据需求显示不同格式的数据。比如:附加单位。
基本使用方式
// 绑定到指定名称的FXML控件之上
@FXML Spinner<Double> zcySpinner;
// 建立数值工厂,设定数值范围,初始值,步长等
DoubleSpinnerValueFactory zcySpinnerValueFactory =
new DoubleSpinnerValueFactory(0, Double.MAX_VALUE, 2000);
// 绑定数值工厂
zcySpinner.setValueFactory(zcySpinnerValueFactory );
// 设置数值,通过数值工厂设置,valueProperty是只读的,没有setValue方法
zcySpinner.getValueFactory().setValue(1000);
// 获取数值
System.out.println("value="+zcySpinner.getValue())
// 绑定编辑器的处理事件
zcySpinner.getEditor().textProperty().addListener(...);
// 绑定数值变化的处理事件
zcySpinner.valueProperty().addListener(...);
ValueFactory 设置
Converter 设置
样式设置