毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 移动平台 >> 正文

鼠标移动到finishLabel上,就改变finishLabel的图片

更新时间:2012-8-18:  来源:毕业论文

我想在eventFilter函数中捕获QLabel的鼠标移动事件,代码如下:

C/C++ code
bool RubberBandWidget::eventFilter(QObject *object, QEvent *event)
{
if(object == finishLabel)
{
if(event->type() == QEvent::MouseMove)
        {
            qDebug() << "Mouse moving...";

            finishLabel->setPixmap(QPixmap(":/sunsong/images/shotscreen_finish_gray.png"));

            return true;
        }}
}
我在RubberBandWidget构造函数中加了setMouseTracking(true);
当我把鼠标移动到finishLabel上时,并没有实现我想要的结果,当我按住鼠标进行拖动的时候,我要的效果实现了。但是我要的效果是当鼠标移动到finishLabel上,就改变finishLabel的图片。请问我的代码错在哪里?望指教!谢谢!在构造函数里面加上这句 setMouseTracking(true);默认是要按住鼠标键才能捕获到移动事件的。
 
bool RubberBandWidget::eventFilter(QObject *object, QEvent *event)
{
if(object == finishLabel)
{
if(event->type() == QEvent::Enter)//Enter鼠标进入,Leave鼠标离开
        {
            qDebug() << "Mouse moving...";

            finishLabel->setPixmap(QPixmap(":/sunsong/images/shotscreen_finish_gray.png"));

            return true;
        }
}
    return QWidget::eventFilter(object,event)//调用基类函数,把事件传递下去。
}
删除 setMouseTracking(true);

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。