我的应用程序是一个有两个窗口的应用程序,其中一个您可以更改添加到我的 SQL DB 的位置和标记点,另一个您可以查看标记点。
我有QTableView
一个QSqlTableModel
。该模型连接到一个以t_point
下列命名的表:
- id 整数 PRIMARY KEY
- 位置整数
我想要做的是:在一个窗口中单击表格并自动移动到另一个窗口中的位置。( 这个完成了 )
移动位置并自动选择QTableView
位置最近的项目。这是交易,我想快速而干净地做到这一点。因此,我使用 aQSqlQuery
通过以下查询获取最接近的项目:
QString("SELECT position FROM t_point ORDER BY ABS(position - %1);").arg(actualPosition);
所以 ai 让它们按与该点的距离排序,我使用query.next()
并得到两个值。索引和位置。
那么现在我如何选择QTableView
修正这个值的行呢?
我不能使用selectRow( int row ) from QTableView
,因为我没有一行,我得到了钥匙和位置......
我得到的唯一解决方案是查看我在模型上的身份或位置。但这太可怕了。