• 6462阅读
  • 6回复

关于tableWidget中删除选中行的操作 [复制链接]

上一主题 下一主题
 
只看楼主 倒序阅读 楼主  发表于: 2013-01-16
— 本帖被 XChinux 从 Qt基础编程 移动到本区(2013-01-17) —
各位大侠,问一个关于tableWidget中删除选中行的问题
我在删除按钮的槽函数里进行如下设置
int i= ui->tableWidget->currentRow();
ui->tableWidget->removeRow(i);
如果我选中某一行的话,这样的操作确实是删除了选中的那一行。
问题是我如果没有选中tableWidget中的任意一行,单击删除按钮的话它也会将第一行删除掉?这个要怎么处理,没选中不执行删除。谢谢了
离线uidab

只看该作者 1楼 发表于: 2013-01-16
回 楼主(可爱的孩子) 的帖子
你进行debug  看看 i  的返回值 , 也许就清楚了!
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
只看该作者 2楼 发表于: 2013-01-17
回 1楼(uidab) 的帖子
我看了debug下i的值,会变的,一下-1,就不会删除,一下0,1,2,飘忽不定
离线uidab

只看该作者 3楼 发表于: 2013-01-17
回 2楼(可爱的孩子) 的帖子
-1说明没选上任何行。 其他情况多看看focus焦点在哪里。
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
只看该作者 4楼 发表于: 2013-01-17
回 3楼(uidab) 的帖子
ui->tableWidget->setFocusPolicy(Qt::NoFocus);
我已经设置了焦点的情况了,稍微好了一点
离线uidab

只看该作者 5楼 发表于: 2013-01-17
回 4楼(可爱的孩子) 的帖子
不是说你设置焦点的事情,而是你在点击删除的时候是选上哪一行了!!!!

或者做一个判断,当未选任何行的情况下让这个按钮不可点击!!
有时候为了工作直接获得答案,而我却失去了思考的乐趣!


飘啊飘,何时能安居!
离线cfxks1989

只看该作者 6楼 发表于: 2013-01-28
你可以把删除键设置为不可用,当列表某行被点击选中是会有个信号,利用这个信号做个slot把删除键做成可用。你试试看可以不?
快速回复
限100 字节
 
上一个 下一个