QTableWidget 选择多行实现多选功能

weixin_38064773 2019-09-19 02:58:31
我想实现在QTableWidget中实现多选功能,通过QTableWidget属性设置可以设置SelectMode和SelectBehavior。实现在操作上选中多行。但我要得到选中的多行的行序列(注:我是以一行为一个对象看待的)。 1 通过QTableWidget自带的函数selectItem()可以得到选中的QTableWidgetItem。 2 通过函数int row(const QTableWidgetItem*)返回一个字段所在行。 通过方法1返回的是所有选中字段。如我的QTableWidget中又3个字段。然后我选中了3行。那么就会返回9个字段。也就是9个QTableWidgetItem。但我是只向返回3个。 通过方法2可以返回一个QTableWidgetItem所在的行序号。 于是目前我能想到的方法就是结合1和2两种方法来实现。通过方法1得到多选的所有QTableWidgetItem。然后对每个QTableWidgetItem执行方法2,得到所有序列,再对这些序列去重处理,得到唯一不重复序号列。这就达到了多选返回多个行序列的目的。 以上就是我的方法,但感觉太复杂,所以拿出来讨论。如果哪位知道有其他的方法,麻烦告知。谢谢!
...全文
3774 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38066880 2019-09-19
  • 打赏
  • 举报
回复
先自己顶一个。在线等待!
weixin_38066953 2019-09-19
  • 打赏
  • 举报
回复
一、推荐使用QTableView二、多选的方式,可以使用selectionModel(即多行高亮选择),也可以使用首行关于格加复选框进行选择的方式
weixin_38067090 2019-09-19
  • 打赏
  • 举报
回复
qtableview  首列如何加图标或者复选框??
weixin_38068392 2019-09-19
  • 打赏
  • 举报
回复
看看model 的data()方法。如果用的是QStandardItemModel的话,可以直接用QStandardItem的相关方法设置。

477

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧