我有一个QListView
,它将自定义QAbstractListModel
设置为模型。该模型从数据库加载数据并将其全部放入QList<QHash<QString, QString> > dataList
数据结构中。每个QHash<QString, QString> data
包含诸如data["id"]
和data["name"]
之类的东西。 data["name"]
值通过模型的data()
方法传递给QListView
。现在我想要做的是在QListView
中点击一个项目时,访问属于从另一个小部件中点击的项目的QHash<QString, QString>
。单击视图中的项目时从另一个小部件访问自定义模型数据
因此,像这样......
connect(view, SIGNAL(clicked(...)), someOtherWidget, SLOT(foo(...))
而且在富(),我们可以例如做...
void someOtherWidget::foo(const QHash<QString, QString>& customData) { QMessageBox::information(this, "User ID", customData["id"]; }
而且它会显示该项目的ID在消息框中输入。
这里的问题究竟是什么? – Chris
+1给克里斯,这个问题目前并不明显。 –