标题:使用QListWidget时,当item的高度大于listwidget的高度时,item显示不全,需要怎么解决
作者:xing181512
日期:2020-11-20 09:47
内容:
ui.setupUi(this);
setFixedSize(800, 600);
QListWidget* pListWidget = new QListWidget(this);
pListWidget->setFixedSize(this->size());
QListWidgetItem* pItem = new QListWidgetItem(pListWidget);
pItem->setSizeHint(QSize(800, 200));
pListWidget->addItem(pItem);
QWidget* pWidget = new QWidget(this);
QLabel* pLb = new QLabel(tr("Test"), pWidget);
QPushButton* pBtn = new QPushButton(tr("test"), pWidget);
QVBoxLayout* pV = new QVBoxLayout;
pV->setMargin(0);
pV->setSpacing(0);
pV->addWidget(pLb, 0, Qt::AlignCenter);
pV->addStretch();
pV->addWidget(pBtn);
pWidget->setLayout(pV);
pListWidget->setItemWidget(pItem, pWidget);
QListWidgetItem* pItem1 = new QListWidgetItem(pListWidget);
pItem1->setSizeHint(QSize(800, 1000));
pListWidget->addItem(pItem1);
QWidget* pWidget1 = new QWidget(this);
QLabel* pLb1 = new QLabel(tr("Test1"), pWidget1);
QPushButton* pBtn1 = new QPushButton(tr("test1"), pWidget1);
QVBoxLayout* pV1 = new QVBoxLayout;
pV1->setMargin(0);
pV1->setSpacing(0);
pV1->addWidget(pLb1, 0, Qt::AlignCenter);
pV1->addStretch();
pV1->addWidget(pBtn1);
pWidget1->setLayout(pV1);
&nbs ..
#1 [zy1233 11-20 13:42]
最后加上pListWidget ->adjustSize()
#2 [guangwen 03-03 10:24]
你好,这个问题解决了吗?
#3 回 guangwen 的帖子 [xing181512 03-03 15:00]
guangwen:你好,这个问题解决了吗? (2021-03-03 10:24)
我最后使用了QScrollArea 来处理,QListwidget 随总item的大小,QScrollArea大小固定