2016-11-01 164 views
1

是否可以使用QDataWidgetMapper插入到SQL数据库中?将QDataWidgetMapper插入到SQL数据库中

到目前为止,我使用映射器来查看和更新​​,但不是用于添加新记录。本质上,我需要通过与QDataWidgetMapper相关的数据创建一个QSqlRecord

+0

你有一个例子[这里](http://www.informit.com/articles/article.aspx?p=1405550&seqNum=3)(方法'EmployeeForm :: addEmployee()') – Tarod

+1

谢谢,这是工作完美。 – user1829358

+1

@塔罗德,你可以请发表这个答案? – demonplus

回答

1

这只是一个例子,不过这个想法是使用模型提供的insertRow函数来插入包含映射器的行。

如果您使用的QDataWidgetMapper::AutoSubmit政策,你的映射是myMapper和你的模式被称为myModel,你可以尝试这样的事:

int row = myMapper->currentIndex(); 
myMapper->submit(); 
myModel->insertRow(row); 
myMapper->setCurrentIndex(row); 

这个代码可以从一个按钮(即添加项调用或类似的东西)。你可以看到一个完整的例子here