关于QT的mouseMoveEvent的问题
事情是这样的,我要实现以下效果。
在我的窗体上有几个按钮,我要实现当我鼠标移动到某一个按钮上的时候,回弹出一段文字提示,鼠标移开的时候文字框自动关闭。
自然我想到了用在窗体类中重载mouseMoveEvent方法,通过实时监控鼠标坐标和按钮坐标比较,然后做出判断。
代码如下:
void MainForm::mouseMoveEvent(QMouseEvent *event)
{
QPoint mouseCursor = event->pos();
QRect connectButtonRect = ui.connectButton->rect();
if(connectButtonRect.contains(mouseCursor) == true)
{
//弹出文字提示框
}
}
编译OK,但运行的时候发现该函数体从来没有被调用执行过,通过查看资料发现在窗体初始化的时候少了一句setMouseTracking(true);
但我即便加上这句话貌似还是有问题,只有当鼠标左击或者右击按钮按下的时候才会调用该函数,否则光移动鼠标的话还是不能调用。
甚至开始怀疑我的Qt出了问题,请各位大侠指教。。
还有如果要实现我开始所说的效果一定要通过这种方法做到么,有其他比较简单的方法么,跪谢。。。。