在上篇文章结尾我说我们重写的那个 accept() 函数代码里还有另一个要注意的点,就是获取tableWidget条目值的问题,这篇来总结一下我遇到的坑.
一、写在前面的废话(无情跳过)
程序猿们应该都有遇到过这个问题–这段代码怎么可能有问题?我在那个界面里就是这么写的啊,完全一个套路啊?或者,谁谁谁就是这么写的啊,为什么他的不错?为什么到我写就出错?这种一般都是我们小白照葫芦画瓢画出来的错,不知道为什么这么写,只知道别人这么写就是对的啊,毕竟才开始接触的时候不知道怎么用,也不管三七二十一,看别人怎么用我就怎么用,结果就悲剧了,今天就分享我遇到的这个坑.
二、问题描述
这个问题跟上篇文章也算是兄弟问题了,两个问题都是要解决空值检测这个大问题,这篇文章遇到的问题是:获取表格控件值失败.
检查别的控件是否为空的时候都直接用的
if(ui->buttonName->text() == ""){
...}
这个判断条件,也一直很顺畅,没有遇到什么坎,但这次在qtablewidget这栽了跟头,只要执行到 ui->tablewidget->item(0,0)->text() 就崩,崩就崩吧,让人疑惑的是在好几个界面用了表格控件,还有的崩有的不崩,这就头大了.
项目具体情况
这里说一下我在这个项目中是怎么用 qtablewidget 控件的–双击原页面中的qtablewidget条目,跳出一个模态框,模态框里是一个仅有一行的qtablewidget控件,用来增加或者修改原有值,如果是增加的话,那一行就是空的,如果