我现在有这样的东西
QLabel* l = new QLabel(this);
l->setTextFormat(Qt::RichText);
l->set_IsSelf(IsSelf);
l->setWordWrap(true);
l->setText("Thissssssssssssssssssssssssssssssss");
l->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Minimum);
l->setMaximumWidth(40);
现在我意识到宽度很小,没关系。我想要的是显示所有内容并使其垂直展开。
最佳答案
你应该在一个布局中插入你的标签,它的 sizeconstraint 设置为 QLayout::SetMinimumSize
并将你的标签的垂直尺寸策略设置为 QSizePolicy::MinimumExpanding
:
QVBoxLayout *layout = new QVBoxLayout(this);
layout->setSizeConstraint(QLayout::SetMinimumSize);
QLabel* l = new QLabel;
l->setWordWrap(true);
l->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding);
layout->addWidget(l);
关于c++ - 防止 QLabel 用大字水平扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24649289/