当前位置: 首页 > news >正文

24 鼠标常用事件

  • 鼠标进入:enterEvent
  • 鼠标离开:leaveEvent
  • 鼠标按下:mousePressEvent
  • 鼠标释放:mouseRelaseEvent
  • 鼠标移动:mouseMoveEvent

 提升为自定义控件MyLabel

 

代码:

//mylabel.h
#ifndef MYLABEL_H
#define MYLABEL_H#include <QLabel>class MyLabel : public QLabel
{Q_OBJECT
public:explicit MyLabel(QWidget *parent = 0);//鼠标进入void enterEvent(QEvent *);//鼠标离开void leaveEvent(QEvent *);//鼠标按下void mousePressEvent(QMouseEvent *ev);//鼠标释放void mouseReleaseEvent(QMouseEvent *ev);//鼠标移动void mouseMoveEvent(QMouseEvent *ev);signals:public slots:
};#endif // MYLABEL_H
//mylabel.cpp
#include "mylabel.h"
#include "QDebug"
#include "QMouseEvent"MyLabel::MyLabel(QWidget *parent) : QLabel(parent)
{//设置鼠标追踪
//    this->setMouseTracking(true);
}//鼠标进入
void MyLabel::enterEvent(QEvent *){qDebug()<<"鼠标进入";
}//鼠标离开
void MyLabel::leaveEvent(QEvent *){qDebug()<<"鼠标离开";
}//鼠标按下
void MyLabel::mousePressEvent(QMouseEvent *ev){//如果是鼠标左键按下,才打印信息if(ev->button() == Qt::LeftButton){//字符串格式化QString str = QString("鼠标按下: x= %1 , y= %2").arg(ev->x()).arg(ev->y());qDebug()<<str;}
}//鼠标释放
void MyLabel::mouseReleaseEvent(QMouseEvent *ev){if(ev->button() == Qt::LeftButton){QString str = QString("鼠标释放: x= %1 , y= %2").arg(ev->x()).arg(ev->y());qDebug()<<str;}
}//鼠标移动
void MyLabel::mouseMoveEvent(QMouseEvent *ev){//按位与运算&if(ev->buttons() & Qt::LeftButton){QString str = QString("鼠标移动: x= %1 , y= %2").arg(ev->x()).arg(ev->y());qDebug()<<str;}
}

http://www.lryc.cn/news/95755.html

相关文章:

  • 了解 3DS MAX 3D摄像机跟踪设置:第 4 部分
  • nginx吞吐量调优
  • Python操作Excel文件,修改Excel样式(openpyxl)
  • AutoSAR系列讲解(实践篇)7.6-实验:配置SWCRTE(下)
  • 【node】使用express+gitee搭建图床,并解决防盗链问题
  • 蕨型叶分形
  • DevOps系列文章之 Git知识大全
  • JVM理论(六)执行引擎--垃圾回收
  • 贪心算法重点内容
  • 基于深度学习的高精度交通信号灯检测系统(PyTorch+Pyside6+YOLOv5模型)
  • 【3D目标检测】DSVT-2023CVPR
  • 我在VScode学Python(Python函数,Python模块导入)
  • 【目标跟踪】1、基础知识
  • 33. 搜索旋转排序数组
  • 接口自动化测试要做什么?8个步骤讲的明明白白(小白也能看懂系列)
  • Flutter 自定义 虚线 分割线
  • Java毕业设计—爱宠医院管理系统设计与实现
  • AI时代带来的图片造假危机,该如何解决
  • 【动态规划】简单多状态
  • 科技资讯|苹果计划本月推出Vision Pro头显开发套件,电池有重大更新
  • k8s 将pod节点上的文件拷贝到本地
  • Git简介与工作原理:了解Git的基本概念、版本控制系统和分布式版本控制的工作原理
  • java篇 类的进阶0x02:方法重载
  • Android11 相机拍照权限,以及解决resolveActivity返回null
  • MAXENT模型的生物多样性教程
  • CISA学习笔记-第一章、信息系统审计过程
  • 回调函数的使用:案例一:c语言简单信号与槽机制。
  • python matplotlib库 设置字体字号等
  • 【MySQL】SQL性能分析 (七)
  • 超越想象的GPT医疗 20230723