JavaFX 场景生成器。如何从 Slider 获取价值?

JavaFX Scene builder. how to get value from a Slider?

晚上好,先生们。

我正在学习使用 Scene Builder 从头开始​​创建 GUI,这意味着我没有在 main class 中创建任何对象; Scene Builder 本身在 FXML 文件中创建了所有内容。

所以,在我的这个 window 中,我有两个滑块和一个开始按钮,它们需要两个滑块的 int 值到 运行。

启动方法就像

public void start(slider1 int value, slider2 int value){ code }

fxml 文件中的滑块,它们有一个 id:

<Slider fx:id="escritoresQuant" blockIncrement="1.0" layoutX="85.0" layoutY="314.0" majorTickUnit="1.0" max="4.0" minorTickCount="0" prefHeight="14.0" prefWidth="71.0" showTickLabels="true" showTickMarks="true" snapToTicks="true" />
  <Slider fx:id="leitoresQuant" blockIncrement="1.0" layoutX="85.0" layoutY="349.0" majorTickUnit="1.0" max="6.0" minorTickCount="0" prefHeight="14.0" prefWidth="71.0" showTickLabels="true" showTickMarks="true" snapToTicks="true" />

如何从这两个滑块获取整数值?
非常感谢

我认为this is what you are looking for

您应该能够通过调用 escritoresQuant.getValue()

获取 double 的值

为用户更改滑块设置一个 eventListener(如果您还没有的话)。 onMouseReleased="#onSliderChanged"

//in the FXML
<Slider  fx:id="escritoresQuant" blockIncrement="1.0" majorTickUnit="5.0" 
max="26.0" min="-26.0" 
minorTickCount="1"  onMouseReleased="#onSliderChanged"
prefHeight="38.0" prefWidth="287.0" showTickLabels="true" 
showTickMarks="true" snapToTicks="true"
style="-fx-background-color: white;" value="3.0" 
BorderPane.alignment="BOTTOM_CENTER" />


//in the Controller class
@FXML
private Slider escritoresQuant;

@FXML
public void onSliderChanged() {
    int sliderValue = (int) escritoresQuant.getValue();
    System.out.println(sliderValue + " ");
    txtOut.setText(escritoresQuant.getValue()+" ");
}