适合QLABEL高度,而无需WordWrap
Fit QLabel height without WordWrap
我需要做一个手动单词包装,因为来自QT的本机WordWrap在错误的位置分裂。我已经完成了文本的包装,但是内容并未显示所有内容。Qlabel像图像一样切割顶部和底部:
我可以将Qlabel安装到没有WordWrap的文本的高度上吗?
我将其写入height
可伸缩:
QLabel lbl;
int count = 0;
QString str = "";
// set lbl text
lbl.setText("hfdsfncsadnfscdajkjkjkjhhkdkcan925");
str = lbl.text();
for(int i = 0;i < str.length();i++)
if(str.at(i).cell() == 'n')
count++;
// resize lbl (width and height)
lbl.resize(lbl.fontMetrics().width("this is the max-length line in qlabel")
, lbl.fontMetrics().height() * (count + 1));
注意:如果更改QLable
字体face
或size
,则此工作!只是可缩放的高度(在每件事都将您的QLabel
Frameshape设置为BOX
之前)。
如果您想执行width
可伸缩符号,则应执行以下步骤:
- 阅读
QLabel
(lblobject
)文本为行 - 计算每个行长
- 选择最大线长度
- 使用
QLabel::fontMetrics().width(QString str)
在width
中调查str
的大小
我希望这可以帮助您...
QLabel
应自动调整到所需的高度,如果将其放置在布局中,是否启用了WordWrap,请参见DOC:http://doc.qt.io/qt-5/layout.html
相关文章:
- 如何使用新运算符跟踪在循环中创建的 QLabel
- 除了构造函数之外,还创建 QLabel
- 在 QLabel 中显示视频
- Qt GUI使用Qfiledialogbox和qlabel显示视频,这是我的代码
- 如何在C++中将自定义文本设置为 QLabel?
- 如何使用鼠标单击选择多个 QLabel 对象?
- 在特定时间内更改 QLabel 的背景颜色
- 如何将QLabel放入切换按钮Qt c ++中
- 如何在QListWidget中显示QStringList的每个项目QLabel和另一个QString?
- 类继承自QLabel,为什么不调用自定义插槽?
- 使用 QpushButton 切换显示在 QLabel 中的图像
- QLabel 未正确更新
- Qt多线程:如何更新两个QLabel?
- 如何在Qt中为任何QLabel设置可访问的名称,我们可以使用Windows讲述人读取
- QT-如何在我的笔记本电脑上全屏显示Qlabel
- 麻烦编译可单击的Qlabel
- 将一个 Qlabel 的 QPixmap 复制到另一个 Qlabel
- 在使用 resizeEvent 调整窗口大小时调整 Qlabel 图像的大小
- Qt 4.8.6 中的 qlabel mailto 链接
- 适合QLABEL高度,而无需WordWrap