QLabel авто несколько строк

например, у нас есть QLabel с MaximumWidth установлен в 400.
Когда мы пытаемся отобразить текст с шириной пикселя более 400, он отображается отрезанным.
Есть ли способ заставить QLabel отображать эту строку в нескольких строках без использования QFontMetrics или тому подобного?

2 ответов


Если я правильно понял ваш вопрос, вы должны использовать setWordWrap функции надписи, с true в качестве параметра.

QLabel lbl("long long string");
lbl.setWordWrap(true);

чтобы показать несколько строк в QLabel, щелкните правой кнопкой мыши на QLabel и выберите "Изменить богатый текст". Это вызывает диалоговое окно, где вы можете ввести текст, как вы хотите видеть, включая клавишу ввода. Установка word wrap для этого не требуется.

Если вы также установите перенос слов (в свойствах QLabel), то он обернет каждую отдельную строку в Qlabel, если она была длиннее, чем недвижимость.

enter image description here