[Qt] Qt鼠标 [2013-08-13更新]

- 鼠标光标

#include <QCursor>

QCursor cursor;
QPoint p = cursor.pos();     // 此时p表示当前鼠标光标的坐标


- 鼠标事件

用法:直接覆盖原来的处理方法

#include <QMouseEvent>

protected:
    void mouseMoveEvent(QMouseEvent *e);
    void mousePressEvent(QMouseEvent *e);
    void mouseReleaseEvent(QMouseEvent *e);
    void mouseDoubleClickEvent(QMouseEvent *e);

其中,mouseMoveEvent默认情况下只在鼠标按键(左键或右键)按下时跟踪鼠标移动,若希望某个UI对象(假设此对象的指针为obj)在鼠标不按下的情况下也能跟踪鼠标移动,则需调用obj->setMouseTracking(true),例如 ui->centralWidget->setMouseTracking(true)。

// 获取当前鼠标位置
void mouseMoveEvent(QMouseEvent *e)
{
    e->globalX();
    e->globalY();
    e->globalPos();
}


你可能感兴趣的:([Qt] Qt鼠标 [2013-08-13更新])