Как отмечалось в другом ответе, вам нужно
- установить малый интервал между тиками, чтобы сколько бы вы ни хотели его перемещать
- установите
setSnapToTicks(true)
так, чтобыползунок по умолчанию перемещает незначительные приращения тиков
например,
final JSlider slider = new JSlider(0, 100, 50);
slider.setMinorTickSpacing(5);
slider.setMajorTickSpacing(20);
slider.setPaintTicks(true);
slider.setPaintLabels(true);
slider.setSnapToTicks(true);
slider.addChangeListener(ce -> {
System.out.println("value: " + slider.getValue());
});
JOptionPane.showMessageDialog(null, slider);