Многострочный текст в элементах управления Swing

В процессе разработки программы часто возникает необходимость создания многострочных надписей у элементов управления. На разных платформах этот вопрос решается по-разному. Например, в VCL и FireMonkey (Delphi, C++ Builder) для включения «многострочного режима» предназначено свойство WordWrap. В библиотеке Swing в Java аналогичного специального свойства нет. Однако, это вовсе не означает, что для элементов управления из этой библиотеки нельзя создавать надписи состоящие из нескольких строк.

Дело в том, что многие элементы управления Swing «умеют понимать» простейшую HTML разметку. Поэтому, для создания надписи из нескольких строк вполне достаточно просто заключить каждую строку в тег p, как это показано ниже.

Если присвоить данную строку с разметкой в качестве значения свойства text элемента управления, будет отображаться надпись, состоящая из двух строк. Результат показан на скриншоте. В качестве примера были использованы элементы управления (слева направо): JLanbel, JButton, JToggleButton, JRadioButton и JCheckBox.

Максимальное количество строк в надписи не регламентируется (по крайней мере, документацией). Но, в тоже время, при разработке интерфейса пользователя лучше всё-таки соблюдать границы разумного и не помещать в элементы управления большие по объёму тексты без необходимости.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *