在你的代码中,出现了重复声明的错误。根据错误信息,看起来你已经先前声明了一个名为model的QStringListModel对象,并尝试在同一作用域内再次进行声明。
解决这个问题的方法之一是删除其中一个重复声明。以下是修改后的代码示例:
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
// 创建QWidget作为主窗口
QWidget mainWindow;
// 创建垂直布局并设置给主窗口
QVBoxLayout* layout = new QVBoxLayout(&mainWindow);
// 创建QListView控件
QListView* listView = new QListView();
// 设置数据项
QStringList data;
data << "Item 1" << "Item 2" << "Item 3";
// 创建模型并设置数据项
QStringListModel model(data);
listView->setModel(&model);
// 添加QListView到布局中,并设置拉伸因子为1,使其填充整个QWidget
layout->addWidget(listView, 1);
// 显示主窗口
mainWindow.show();
return app.exec();
}
在上述修改后的代码中,我删除了重复声明的行,并将QStringListModel对象直接创建为局部变量,并使用构造函数初始化该模型对象,并将数据项传递给构造函数。
希望这能解决你的问题!如果还有其他疑问,请随时提问。
内容由零声教学AI助手提供,问题来源于学员提问