Qt的鼠标事件

来源:互联网 发布:淘宝账号如何绑定手机 编辑:程序博客网 时间:2024/05/29 12:28

        Qt里常用的鼠标事件有mousePressEvent、mouseMoveEvent、mouseReleaseEvent、mouseDoubleClickEvent鼠标事件方法。

    void mousePressEvent(QMouseEvent *e);    void mouseMoveEvent(QMouseEvent *e);    void mouseReleaseEvent(QMouseEvent *e);    void mouseDoubleClickEvent(QMouseEvent *e);
         分表对应鼠标键单击、鼠标的移动、鼠标键松开、鼠标键的双击。
         各事件的基本用法如下:
void MouseEvent::mousePressEvent(QMouseEvent *e){    QString str = "(" + QString::number(e->x()) + ", " + QString::number(e->y()) + ")";    if(e->button() == Qt::LeftButton)    {        statusBar()->showMessage(tr("左键:")+str);//statusBar()对应状态栏中加入的控件    }    else if(e->button() == Qt::RightButton)    {        statusBar()->showMessage(tr("右键:")+str);    }    else if(e->button() == Qt::MidButton)    {        statusBar()->showMessage(tr("中键:")+str);    }}void MouseEvent::mouseMoveEvent(QMouseEvent *e){    MousePosLabel->setText("("+QString::number(e->x())+", "+QString::number(e->y())+")");}void MouseEvent::mouseReleaseEvent(QMouseEvent *e){    QString str = "("+QString::number(e->x())+", "+QString::number(e->y())+")";    statusBar()->showMessage(tr("释放在:")+str, 3000);}void MouseEvent::mouseDoubleClickEvent(QMouseEvent *e){    QString str = "("+QString::number(e->x())+", "+QString::number(e->y())+")";    statusBar()->showMessage(tr("双击:")+str);}


原创粉丝点击