我使用了QSqlQueryModel的子类来公开我的QML项目中ListView的数据。我想在同一时间做这两件事:
使用带有模型指针的setContextProperty()
将模型展示给QML。
将模型保留在另一个线程中,这样当我调用模型update()
函数(执行最后一个查询以反映数据库中更改的数据)时,模型在重新查询时不会阻止UI数据库中。
有可能吗?如果没有,什么是更好的解决方案?
答案 0 :(得分:0)
我的解决方案是:子类QThread
,将QmlApplicationViewer
指针传递给它的构造函数,并在新类DatabaseQueryThread
内,我为那里的查看器设置了context属性。这样,Qt将允许我直接通过指针访问查询模型。