Установите размер большого пальца JSlider
Как настроить размер большого пальца для JSlider
?
При значениях по умолчанию и диапазоне для JSlider
из 256 большой палец имеет ширину всего в несколько пикселей, что затрудняет управление мышью.
Я использую внешний вид Windows 7 и слайдер выглядит следующим образом:
![Screenshot of slider]()
Включение paintTicks
с большим и меньшим интервалом тика 0 дает лучший (хотя и не предпочтительный) дисплей:
![Screenshot of slider with paintTicks enabled]()
Желаемый дисплей отображается на следующем изображении - взятом из собственного приложения Windows 7:
![Screenshot of native slider]()
Ответы
Ответ 1
Вы можете попробовать настроить JSlider
Look and Feel следующим образом:
UIDefaults defaults = UIManager.getDefaults();
defaults.put("Slider.thumbHeight", HEIGHT_AS_INTEGER); // change height
defaults.put("Slider.thumbWidth", WIDTH_AS_INTEGER); // change width
Ссылка:
Важно отметить, что эти изменения будут применяться ко всем экземплярам JSlider
, что может сделать этот подход нежелательным.
Ответ 2
Это зависит от SliderUI, который может иметь жесткие кодированные размеры. Если нет, использование предложения mre будет способом, если вы хотите иметь такой же размер большого пальца для всех слайдеров.
В качестве альтернативы для установки значений по умолчанию для пользовательского интерфейса, который их использует, вы можете определить другой пользовательский интерфейс для специального слайдера (например, myslider.setUI(new MyCustonSliderUI())
), но имейте в виду, что у него есть свои недостатки.