QDataWidgetMapper无法保存更新数据库

      以前遇到数据库无法用QDataWidgetMapper更新的问题,《C++ gui Qt4》书上数据库那一节说得不是很清楚,用自动更新,改变数值后没有更新到数据库(最重要的那点要mapper->submit()提交一下没有说清楚)···谷歌百度 QTCN CSDN都没人解决一下 晕死~ 自己解决好了。 原因如下:

 

     QT助手上说QDataWidgetMapper有自动更新和手动更新两种方法·· 那个自动更新是自动更新model的内容,而不是直接更新数据库的内容。 也就是说控件失去焦点后会自动更新model后,还要再自己调用mapper->submit()一下才能更新到数据库。

 

     手动更新的话就是,在控件上输入新的数值后,当控件失去焦点,model不会自动更新,只有再调用一下mapper->submit()之后才会更新到model和数据库(这是同时更新model和数据库的)。

 

     另外最重要的一点,要将mapper->submit()放在另外一个槽里调用才有效。如新建一个提交按钮,按下就调用mapper->submit() 提交。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值