2013-02-13 2 views
1

Возможно, я просто слепой, но у меня есть слайдер, и мне нужно знать, есть ли способ изменить шаги.Возможно изменение темпа в слайдере JavaFx?

Пример: слайдер от 7,5 до 13,0 Пейс 0,5

Когда я установить значение в метке, я хотел бы иметь что-то вроде этого: 7,5; 8,0; 8.5

Для каждого движения с ползунком я получаю что-то вроде этого в данный момент: 7.5; 7.51

Пробовал все. Есть идеи?

ответ

3

Установите галочку для слайдера и привяжите его значение к тикам.

Для значений выборок, которые вы даете в ваш вопрос:

import javafx.scene.control.Slider; 
... 
Slider slider = new Slider(7.5, 13, 7.5); 
slider.setMajorTickUnit(0.5); 
slider.setMinorTickCount(0); 
slider.setSnapToTicks(true); 

Из Slider setSnapToTicks Javadoc:

Указывает значение Slider всегда должны быть приведены в соответствие с отметками. Это выполняется, даже если метки не отображаются.

+1

Правильно, фрагмент кода должен выглядеть следующим образом: Ползунок слайдера = новый слайдер (7.5, 13, 7.5); slider.setMajorTickUnit (0,5); slider.setMinorTickCount (0); slider.setSnapToTicks (true); slider.setShowTickLabels (true); slider.setShowTickMarks (true) ;, и главный вызов здесь - slider.setMinorTickCount (0), поскольку в противном случае по умолчанию у каждой пары основных тиков есть 5 мелких тиков, а привязка будет выполняться до ближайшего младшего тика, не главное. –

+0

Обновленный ответ также устанавливает минимальное количество меток в 0, поэтому привязка работает, как ожидалось. Спасибо, Александр. – jewelsea

+0

Удивительный! Сначала я подумал, что похоже, что это не работает, но я просто упустил хватку. Выглядит очень элегантно :) Кроме того, я добавляю ArrayList со значениями, которые должна отображаться меткой. – Sonja

Смежные вопросы