ChatGPT解决这个技术问题 Extra ChatGPT

QLabel auto multiple lines

For example, we have a QLabel with MaximumWidth set to 400.
When we try to display some text with pixel width more than 400, it's shown cut off.
Is there any way to make QLabel display this string in multiple lines without using QFontMetrics or the like?


A
Alex Feinman

If I understood your question correctly, you should use the setWordWrap function for your label, with true as its parameter.

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

With .setWordWrap(true) you can also use new line (\n) to break line if needed. With expanding vertical policy it is for me the best way to create plain text info area (non-selectable and non-editable)
z
zar

In order to show multiple lines in QLabel, right click on QLabel and select 'change rich text'. This brings up dialog where you can type the text as you want to see including enter key. Setting the word wrap is not required for this.

If you set the word wrap as well (in QLabel properties) than it will wrap each individual line in the Qlabel if it was longer than the real estate.

https://i.stack.imgur.com/KPAGk.png


M
Momen

As another option to wrap text using Qt Designer, you can check the box under Property Editor for a QLabel:

https://i.stack.imgur.com/B7N1B.png


关注公众号,不定期副业成功案例分享
Follow WeChat

Success story sharing

Want to stay one step ahead of the latest teleworks?

Subscribe Now