QListWidget控件的问题

大树学长 2019-10-15 05:07:14
使用的系统控件QListWidget,
问题:item中怎么去掉鼠标移动到item上面的背景色、点击选中item的背景色和点击选中后光标不在列表上时item的背景色?

主要是想改为自己设定的颜色,系统的颜色不怎么好想自己设置,下面是系统自带的颜色

网上只找到setFlags,但是这个不能设置光标移动的颜色
...全文
162 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
弓人水 2019-10-16
  • 打赏
  • 举报
回复
学习Qt一定先学会利用Qt Creator自带的帮助文档:
Qt Widgets==》Qt Style Sheets Reference (里面包含了所有QSS的语法和用法)
大树学长 2019-10-16
  • 打赏
  • 举报
回复
找到了selected和selected:!active
大树学长 2019-10-16
  • 打赏
  • 举报
回复
引用 3 楼 donwmufromdying 的回复:
楼上说的用qss确实能改变item底色,不过,可能无法实现交叉行变色,
交叉行变色我有其它方法实现了,现在的问题是还有一些状态的背景色是系统颜色,我不知道那些状态的QListWidget::Item:hover、QListWidget::Item:pressed应该是多少? 遇到的状态: 一个是在选中后鼠标移动到其它地方,但是光标还是item上的背景色 一个是选中后光标移动到其它位置了,item的背景色 这两个背景色还是系统的颜色不知道修改,主要是不知道那些状态
donwmufromdying 2019-10-16
  • 打赏
  • 举报
回复
楼上说的用qss确实能改变item底色,不过,可能无法实现交叉行变色,
大树学长 2019-10-16
  • 打赏
  • 举报
回复
引用 1 楼 弓人水 的回复:
listWidget->setStyleSheet("QListWidget::Item:hover{background:blue;}"); 使用QSS式样,自己可以定制
是这样,鼠标移动到上面的颜色可以了,不过发现在选中后鼠标移动别的地方去后的选中背景色还是系统的颜色,这个其余状态的怎么写?比如移动:QListWidget::Item:hover,按下:QListWidget::Item:pressed,其余的那些状态在哪查询???
弓人水 2019-10-15
  • 打赏
  • 举报
回复
listWidget->setStyleSheet("QListWidget::Item:hover{background:blue;}");
使用QSS式样,自己可以定制

16,203

社区成员

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

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