Как удалить текст выше JSlider - PullRequest
       0

Как удалить текст выше JSlider

5 голосов
/ 20 сентября 2010

У меня есть JSlider в моем графическом интерфейсе, который изменяется от 0 до 100. По какой-то причине над позицией ползунка есть текст, который отображает текущее значение ползунка и следует за моим ползунком. То есть, если я переместу ползунок на полпути, над тем местом, где сейчас находится мой ползунок, появится надпись «50». Однако я не могу понять, как называется это текстовое поле, все, что я знаю, это его часть ползунка.

Я хочу либо удалить его, либо изменить его на что-то еще, как бы я это сделал?

Ответы [ 4 ]

4 голосов
/ 27 января 2011

Я бы только прокомментировал ответ Etaoin, но у меня пока нет на него репутации.

Во всяком случае, позвоните, прежде чем создавать экземпляр JSlider:

UIManager.put("Slider.paintValue", false);

Обратите внимание на заглавную букву «V» в paintValue.

Кроме того, чтобы напечатать все забавные вещи, которые в данный момент установлены вашим UIManager, введите этот код в любом месте после создания экземпляра UIManager:

Iterator<Entry<Object, Object>> it = UIManager.getDefaults().entrySet().iterator();
while(it.hasNext())
    System.out.println(it.next());
3 голосов
/ 27 сентября 2010

Это однажды беспокоило меня в проекте, и я нашел следующий обходной путь.Вызовите это один раз перед созданием экземпляра вашего JSlider - я поместил его в блок static в моем подклассе JPanel:

UIManager.put("Slider.paintValue", false);

Это позаботится об этом.

0 голосов
/ 22 сентября 2010

Вы имеете в виду всплывающую подсказку?Это маленькая коробочка, которая появляется над ползунком и следует за вашей мышью, если вы взяли ползунок?Если это так, вы можете отключить его, просто позвонив setToolTipText( null ), или переопределить текст с помощью setToolTipText( "My Text" ).

0 голосов
/ 20 сентября 2010

Как я вижу, в JSlider есть метод setLabelTable с параметром Dictionary.Я не использовал его, но я предполагаю, что если вы установите его в пустой словарь (или пустые метки для каждого возможного значения), тогда метки не появятся.

Лучшим решением является использование setPaintLabels со значением false.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...