QSS语法参考http://blog.csdn.net/liang19890820/article/details/51691212
Qt助手上也有比较详细的说明,选择器以及伪选择器,现在只是做个简单的搬运&翻译工。
当然也可以重载QPushButton 然后跟踪鼠标党鼠标滑过Button的时候,使用画板去更改ButtonText的颜色。
MyButton= new QPushButton("LiuLikeQian",this);
MyButton->setStyleSheet("QPushButton{background:transparent;font:12pt 微软雅黑 blod;}"
"QPushButton:hover{color:red;}"
"QPushButton:pressed{color:blue}");
当然有滑过肯定也有点击的,效果如下
normal状态是黑色
hover状态是红色
pressed状态是蓝色
使用的是gifcam鼠标没有录制进去,效果就这样的了。
下面介绍重载QPushButton的方法,也就是重写mouseevent。
直接去判断这个按钮的 QRect 里面有没有包含鼠标的位置,contain 那么即包含,那么时候改变button的 Qss
当鼠标离开Button的QRect范围的时候,那么即contain 没有包含鼠标的位置,那么使用Qss还原Button原来的样式,
注意要在重写的QPushButton这边允许鼠标跟中,setmousetar什么的这个方法。