qt中当鼠标移到按钮上如何改变颜色

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt中当鼠标移到按钮上如何改变颜色相关的知识,希望对你有一定的参考价值。

首先要响应鼠标事件,然后通过 Style Sheets 改变按钮的外观

1. 从QPushButton派生一个自己的按钮类
2.在新类的构造函数中 调用 mouseTracking(true);以获取鼠标移动事件。
3. 重载 mouseMoveEvent(),在该函数中通过StyleSheet改变外观
如: setStyleSheet("background: yellow”);

Qt Style Sheets的使用请参考 Assistance中的内容 和 Style Sheet Example
参考技术A loginButton->setStyleSheet(tr("QPushButtonbackground-color:white;QPushButton:hoverbackground-color:cyan;QPushButton:pressedbackground-color:red;"));
调用Qbutton的setStyleSheet类,上面的函数实现鼠标移到按钮前是白色,移到按钮后是蓝色,按下后是红色。当然如果不想换掉按下后的颜色,直接loginButton->setStyleSheet(tr("QPushButtonbackground-color:white;QPushButton:hoverbackground-color:cyan;"));就行。

以上是关于qt中当鼠标移到按钮上如何改变颜色的主要内容,如果未能解决你的问题,请参考以下文章

C# 中的ToolStrip上的按钮,当鼠标移到上面去的时候背景色就变为蓝色了,如何修改为其他的颜色?

在java中如何设定面板的背景颜色

qt中如何修改按钮的背景颜色?

Qt 样式表鼠标滑过按钮更改Text文本颜色

c# winform实现toolStripMenuItem鼠标移到上面的选项值颜色改变

如何获取鼠标在控件中位置.MFC和API都行 谢谢