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; }