JavaFX Slider handle change event
import javafx.application.Application; import javafx.stage.Stage; import javafx.geometry.Orientation; import javafx.scene.Scene; import javafx.scene.control.Slider; import javafx.scene.layout.BorderPane; import javafx.scene.layout.Pane; import javafx.scene.text.Text; public class Main extends Application { @Override//from w w w . j ava2 s.c om public void start(Stage primaryStage) { Text text = new Text(20, 20, "JavaFX Programming"); Slider slHorizontal = new Slider(); slHorizontal.setShowTickLabels(true); slHorizontal.setShowTickMarks(true); Slider slVertical = new Slider(); slVertical.setOrientation(Orientation.VERTICAL); slVertical.setShowTickLabels(true); slVertical.setShowTickMarks(true); slVertical.setValue(100); // Create a text in a pane Pane paneForText = new Pane(); paneForText.getChildren().add(text); // Create a border pane to hold text and scroll bars BorderPane pane = new BorderPane(); pane.setCenter(paneForText); pane.setBottom(slHorizontal); pane.setRight(slVertical); slHorizontal.valueProperty().addListener(ov -> text.setX(slHorizontal.getValue() * paneForText.getWidth() / slHorizontal.getMax())); slVertical.valueProperty().addListener(ov -> text.setY((slVertical.getMax() - slVertical.getValue()) * paneForText.getHeight() / slVertical.getMax())); Scene scene = new Scene(pane, 450, 170); primaryStage.setTitle("SliderDemo"); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); } }