怎样使QTableWidget中以行为单位高亮呢

永远的魔术1号 2012-10-16 10:38:38
现在的高亮都是每个QTableWidgetItem单独高亮,但选中的时候通过设置m_pListWidgetPage->setSelectionBehavior(QAbstractItemView::SelectRows); 为整行选中,这样看上去样式就有冲突,如何设置鼠标盘旋时整行高亮
...全文
539 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]

另外给你个建议,用QTreeView去试试,它可以支持整行,而且完全可以显示一个TableModel,毕竟从Qt的模型视图结构来讲,Table只是一个特殊的(只有一层的)Tree
[/Quote]

非常感谢
xiachm 2012-10-16
  • 打赏
  • 举报
回复
另外给你个建议,用QTreeView去试试,它可以支持整行,而且完全可以显示一个TableModel,毕竟从Qt的模型视图结构来讲,Table只是一个特殊的(只有一层的)Tree
xiachm 2012-10-16
  • 打赏
  • 举报
回复
设置盘旋时的高亮一般要用QSS去实现,设置对象的::hover状态。

但,很遗憾的说,QTableWidget或QTableView只能支持单元格的hover,即使设置了QAbstractItemView::SelectRows也无济于事,因为对于QSS来讲,我们设置的是Item的状态,单个Item也并不知道它自己和其它Item间的关系。

所以,如果要支持整行的盘旋高亮,只能子类化一个QTableWidget或QTableView,然后用代码去实现了。

帮你搜了个帖子,自己看看吧:

让QTableView支持hover整行

16,228

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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