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