写了一个小程序,可实现双击鼠标后显示同一张图片。
问题:
1.其中设置了双击的有效区域,但好像没有什么效果,随便在哪个位置双击都可以
2.其中设置了鼠标左键有效,但双击右键时同样有效
请教是哪里出了问题,改怎么修改!谢谢!
部分代码如下:
void mainForm::mousePressEvent(QMouseEvent *e)
{
int px = myPixmapLabel->x(); //myPixmapLabel为一开始显示图片的QLabel
int py = myPixmapLabel->y();
int pw=myPixmapLabel->width();
int ph=myPixmapLabel->height();
if (e->button()==Qt::LeftButton)
{
int ex=e->x();
int ey=e->y();
if (ex>px&&ex<pw &&ey>py&& ey<ph) //设置鼠标点击有效的区域
{ timer->start(100);//开始计时
return;}
return;}
}
void mainForm::mouseDoubleClickEvent(QMouseEvent *e)
{
timer->stop();//禁止单击要做的事
QMessageBox::about( this, "Qt Mouse Click Event Example","Double click");
label->setPixmap( QPixmap(path));
label->setScaledContents( TRUE );
}