我想用 QDatastream 和 QTcpSocket 将 QSqlQueryModel 发送到另一个客户端。我想删除一些行并向 QSqlQueryModel 添加一些额外的行(不更改数据库)并将其发送给客户端,就像这个伪代码一样: -
QTcpSocket socket;
socket.setSocketDescriptor(handle);
socket.waitForReadyRead(WAIT_TIME);
QByteArray req = socket->readAll();
QDataStream reqstream(&req,QIODevice::ReadOnly);
QSqlQueryModel MyModel;
....
// fetch data with MyModel
// add/remove some rows from that model without adding/removing them from actual database
....
QByteArray res;
QDataStream resstream(&res,QIODevice::WriteOnly);
resstrem << MyModel;
socket.write(res);
如何在不创建新的模型深层副本的情况下实现这一点。在客户端,它应该只接收带有数据的模型,以便我可以在 QML 中显示它。