目录
鼠标事件重载函数
通常是重定义部件的鼠标事件处理函数来进行一些自定义的操作。
Protected:
void mousePressEvent(QMouseEvent *event); //鼠标按下事件
void mouseReleaseEvent(QMouseEvent *event); //鼠标释放事件
void mouseDoubleClickEvent(QMouseEvent *event); //鼠标双击事件
void mouseMoveEvent(QMouseEvent *event); //鼠标移动事件
void wheelEvent(QMouseEvent *event); //鼠标滚轮事件
判断鼠标按下
if(event->button() == Qt::LeftButton) //判断鼠标左键点击
if(event->button() == Qt::RightButton) //判断鼠标右键右键
if(event->buttons() & Qt::LeftButton) //判断鼠标左键按下的同时移动鼠标
if(event->buttons() & Qt::RightButton) //判断鼠标右键按下的同时移动鼠标
更改鼠标光标形状
(在构造函数内添加):
QCursor cursor; //设置光标对象
cursor.setShape(Qt::OpenHandCursor); //设置光标形状
setCursor(cursor); //使用光标
鼠标跟踪
pos()函数获取鼠标指针在窗口中的位置,pos().x() 和 pos().y() 获取坐标点。
默认是当按下鼠标按键时移动鼠标,鼠标移动事件才会产生,如果想不按鼠标按键,也可以获得鼠标移动事件,可以构造函数上添加这一行:
setMouseTracking(true); //设置鼠标跟踪