JDK9 b132 + Win. 7
Please run the following test code:
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Slider;
import javafx.stage.Stage;
public class SliderTest extends Application {
@Override
public void start(Stage stage) {
Group root = new Group();
Scene scene = new Scene(root, 150, 100);
stage.setScene(scene);
double x = 0.05;
Slider s = new Slider(x / 10, x, x / 3);
s.setShowTickLabels(true);
s.setShowTickMarks(true);
s.setMajorTickUnit(x / 3);
s.setMinorTickCount(1);
s.setSnapToTicks(true);
root.getChildren().add(s);
stage.show();
}
public static void main(String[] args) { launch(args); }
}
please note that the range length is not multiple of the tick unit. the effects:
1. when shown, the slider position isn't snapped to any tick
2. the user cannot set the slider to the max position (0.05), it resiles to the previous tick
please note also that the distances between the ticks are not equal (but this point is probably expected).
the case is doubtful, but nevertheless it seems the slider should behave properly even in this situation.
Please run the following test code:
import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.Slider;
import javafx.stage.Stage;
public class SliderTest extends Application {
@Override
public void start(Stage stage) {
Group root = new Group();
Scene scene = new Scene(root, 150, 100);
stage.setScene(scene);
double x = 0.05;
Slider s = new Slider(x / 10, x, x / 3);
s.setShowTickLabels(true);
s.setShowTickMarks(true);
s.setMajorTickUnit(x / 3);
s.setMinorTickCount(1);
s.setSnapToTicks(true);
root.getChildren().add(s);
stage.show();
}
public static void main(String[] args) { launch(args); }
}
please note that the range length is not multiple of the tick unit. the effects:
1. when shown, the slider position isn't snapped to any tick
2. the user cannot set the slider to the max position (0.05), it resiles to the previous tick
please note also that the distances between the ticks are not equal (but this point is probably expected).
the case is doubtful, but nevertheless it seems the slider should behave properly even in this situation.