Компоненты Swing: вертикальный текст вопроса
-
06-07-2019 - |
Вопрос
Если у меня есть кнопка, подобная той, что изображена на этом изображении:
http://www.freeimagehosting.net/image.php? 4cd775814c.png
как сделать так, чтобы текст отображался вертикально? Как в
j B u t t o n 1
Я хотел бы знать, как сделать то же самое для JLabel. Я уверен, что должен быть лучший способ, чем создавать столько меток, сколько символов в строке. Верно?
РЕДАКТИРОВАТЬ . Как я могу вставить изображение в свое сообщение? Кнопка для изображения показывает изображение в разделе предварительного просмотра, но когда я на самом деле публикую данные, я получаю только некоторый текст обратно, как будто теги портятся.
Решение
Вы можете использовать HTML для JButton или JLabel. Итак,
button = new JButton("<html>J<br>b<br>u<br>t<br>t<br>o<br>n<br>1</html>");
должен сделать свое дело.
Другие советы
Не знаю, полезно ли это вам, но этот образец показывает, как сделать вертикальную метку. Разница в том, что он вращает весь текст (и / или значок) вместо того, чтобы складывать буквы. Я не знаю, насколько сложно было бы изменить его, чтобы сделать то, что вы просите.
Преимущество такого способа состоит в том, что ваши ярлыки могут меняться во время выполнения; генерация больших HTML-строк может оказаться трудной задачей по сравнению с простым label.setUI(new VerticalLabelUI(true));
(и вам не нужно беспокоиться о < > в тексте метки).