下面是一个简单的示例代码,演示如何使用QListView显示一个字符串列表,并且在用户点击列表项时弹出一个消息框显示该项的内容。
#include <QtWidgets/QApplication>
#include <QtWidgets/QListView>
#include <QtWidgets/QMessageBox>
#include <QtCore/QStringListModel>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// 创建一个字符串列表模型
QStringListModel model;
model.setStringList(QStringList() << "Item 1" << "Item 2" << "Item 3");
// 创建一个列表视图,并设置数据模型
QListView listView;
listView.setModel(&model);
// 连接列表视图的itemClicked信号到槽函数
QObject::connect(&listView, &QListView::clicked, [&](const QModelIndex& index) {
// 获取被点击项的文本内容
QString itemText = model.data(index, Qt::DisplayRole).toString();
// 弹出消息框显示该项内容
QMessageBox::information(nullptr, "Item", itemText);
});
// 显示窗口并进入事件循环
listView.show();
return a.exec();
}
运行该程序可以看到一个列表视图,包含三个列表项。当用户点击其中一个列表项时,会弹出一个消息框,显示该项的内容。