Qt:QGridLayout拒绝添加小部件
因此,我尝试使用QGridLayout已有一段时间了,但它一直给我错误: 错误:调用'QLayout::addWidget(qscrolrea*,int,int')时没有匹配的函数。我不知道我做错了什么。以下是导致错误的代码部分:Qt:QGridLayout拒绝添加小部件,qt,Qt,因此,我尝试使用QGridLayout已有一段时间了,但它一直给我错误: 错误:调用'QLayout::addWidget(qscrolrea*,int,int')时没有匹配的函数。我不知道我做错了什么。以下是导致错误的代码部分: QScrollArea * setScrollArea(QWidget * w) { w->setStyleSheet("background-color:white;"); QScrollArea * scrollArea = new QScr
QScrollArea * setScrollArea(QWidget * w)
{
w->setStyleSheet("background-color:white;");
QScrollArea * scrollArea = new QScrollArea;
scrollArea->setWidgetResizable(true);
scrollArea->setWidget(w);
return scrollArea;
} ^
.
.
.
shower = new QWidget;
shower->setLayout(new QGridLayout);
shower->layout()->addWidget(setScrollArea(upWindow), 0, 0);
shower->layout()->addWidget(setScrollArea(downWindow), 1, 0);
有人知道我做错了什么吗?QWidget::layout()
返回一个简单的QLayout
,它没有函数addWidget(QWidget*,int,int)
。
要使用QGridLayout
功能,请执行以下操作:
shower = new QWidget;
QGridLayout * layout = new QGridLayout;
layout->addWidget(setScrollArea(upWindow), 0, 0);
layout->addWidget(setScrollArea(downWindow), 1, 0);
shower->setLayout(layout);
QWidget::layout()
返回一个简单的QLayout
,它没有函数addWidget(QWidget*,int,int)
。
要使用QGridLayout
功能,请执行以下操作:
shower = new QWidget;
QGridLayout * layout = new QGridLayout;
layout->addWidget(setScrollArea(upWindow), 0, 0);
layout->addWidget(setScrollArea(downWindow), 1, 0);
shower->setLayout(layout);