1、首先建立一个新的Widget工程
在新建工程的头文件中定义申明鼠标按下、释放、移动、双击事件;然后到主程序中对定义的几个鼠标事件进行简单的处理
注意在主程序最前面添加鼠标的头文件和要用到的其他头文件
找到帮助文档:
- globalPos() const : QPoint
- globalX() const : int
- globalY() const : int
- button() const : Qt::MouseButton
在其中这几个代表的是鼠标事件触发后的坐标值和按下的鼠标值(是鼠标左键还是右键还是中键)
打印各个事件触发后的鼠标坐标值和鼠标值
添加以下代码
void Widget::mousePressEvent(QMouseEvent *event){ qDebug()<<"鼠标按下"<<endl; if(event->button()==Qt::LeftButton) qDebug()<<"左键按下"<<endl; else if(event->button()==Qt::RightButton) qDebug()<<"右键按下"<<endl; else if(event->button()==Qt::MidButton) qDebug()<<"中键按下"<<endl; qDebug()<<event->globalPos()<<endl; qDebug()<<event->windowPos()<<endl; } void Widget::mouseReleaseEvent(QMouseEvent *event){ qDebug()<<"鼠标释放"<<endl; qDebug()<<event->globalPos()<<endl; qDebug()<<event->windowPos()<<endl; } void Widget::mouseMoveEvent(QMouseEvent *event){ qDebug()<<"鼠标移动"<<endl; qDebug()<<event->globalPos()<<endl; qDebug()<<event->windowPos()<<endl; } void Widget::mouseDoubleClickEvent(QMouseEvent *event){ qDebug()<<"鼠标双击"<<endl; qDebug()<<event->globalPos()<<endl; qDebug()<<event->windowPos()<<endl; }