参考:
QT的自动滚动区QScrollArea的用法,图文详解-CSDN博客
demo:
QScrollArea *scrollArea = new QScrollArea;
QWidget *pWgt = new QWidget();
QHBoxLayout *pLayout = new QHBoxLayout();
for(int i = 0; i < 100; i++)
{
QPushButton *pBtn = new QPushButton();
pBtn->setText(QString("按钮%1").arg(i));
pBtn->setMinimumSize(QSize(60,30));
pLayout->addWidget(pBtn);
}
pWgt->setLayout(pLayout);
scrollArea->setWidget(pWgt);
scrollArea->show();
效果图:
关键:
(1)QScrollArea下面需要有一个QWidget对象,这里是pWgt。
(2)scrollArea->setWidget(pWgt);
这句要写在最后,就是把其他控件都载入后,不然会失效。