xing181512 |
2020-11-20 09:47 |
使用QListWidget时,当item的高度大于listwidget的高度时,item显示不全,需要怎么解决
- ui.setupUi(this);
setFixedSize(800, 600);
QListWidget* pListWidget = new QListWidget(this); [color=#ff0000] pListWidget->setFixedSize(this->size());[/color] 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); [color=#ff0000] pItem1->setSizeHint(QSize(800, 1000));[/color] pListWidget->addItem(pItem1); QWidget* pWidget1 = new QWidget(this); QLabel* pLb1 = new QLabel(tr("Test1"), pWidget1); [color=#ff0000] QPushButton* pBtn1 = new QPushButton(tr("test1"), pWidget1);[/color] QVBoxLayout* pV1 = new QVBoxLayout; pV1->setMargin(0); pV1->setSpacing(0); pV1->addWidget(pLb1, 0, Qt::AlignCenter); pV1->addStretch(); pV1->addWidget(pBtn1); pWidget1->setLayout(pV1);
pListWidget->setItemWidget(pItem1, pWidget1);
将滚动条托至最下方,item1 的按钮“test1”都没有显示出来
|
|