我正在做一个项目,我试图构建一个具有多个 QTreeWidgetItems 的 QTreeWidget,一旦我单击特定项目,它就会连接到数据库并在 tableview 模型中显示查询结果,直到现在一切正常。
问题是我希望每个项目根据同一张表上的某些标准输出不同的结果,其中该标准仅更改属性的值,并且该值与项目名称相同。例如名为 122 的项目,并且该表具有名为 no 的属性。当我们单击项目 122 时,必须显示此查询的结果(从表中选择 *,其中 no=122)
任何帮助:)
我正在做一个项目,我试图构建一个具有多个 QTreeWidgetItems 的 QTreeWidget,一旦我单击特定项目,它就会连接到数据库并在 tableview 模型中显示查询结果,直到现在一切正常。
问题是我希望每个项目根据同一张表上的某些标准输出不同的结果,其中该标准仅更改属性的值,并且该值与项目名称相同。例如名为 122 的项目,并且该表具有名为 no 的属性。当我们单击项目 122 时,必须显示此查询的结果(从表中选择 *,其中 no=122)
任何帮助:)
我假设您有一个由QSqlQueryModel
or支持的 QTableView QSqlTableModel
。
您可以连接到信号QTreeWidget::itemSelectionChanged()
,然后在插槽中使用 获取当前项目selectedItems()[0]
。然后你创建你的查询:
QSqlQuery query;
query.prepare("select * from table where no=:no");
query.bindValue(":no", number);
query.exec();
最后你可以setQuery (const QSqlQuery & query)
在模型上使用。这应该会更新您的视图。
我希望我能正确理解你想要达到的目标。