Qt的鼠标移入移出事件

本文介绍了Qt中处理鼠标移入和移出事件的方法,通过`enterEvent`和`leaveEvent`函数实现。示例代码展示了在自定义Widget类中如何响应这两个事件,并打印相应的调试信息。
摘要由CSDN通过智能技术生成

mouseMoveEvent是鼠标移动,拖动按下左键的事件。

enterEvent是鼠标移入。

leaveEvent是鼠标移出

widget.h

[cpp]  view plain  copy
  1. #ifndef WIDGET_H  
  2. #define WIDGET_H  
  3.   
  4. #include <QWidget>  
  5. #include<QEvent>  
  6. namespace Ui {  
  7. class Widget;  
  8. }  
  9.   
  10. class Widget : public QWidget  
  11. {  
  12.     Q_OBJECT  
  13. protected:  
  14.     void enterEvent(QEvent *);  
  15.     void leaveEvent(QEvent *);  
  16. public:  
  17.     explicit Widget(QWidget *parent = 0);  
  18.     ~Widget();  
  19.   
  20. private:  
  21.     Ui::Widget *ui;  
  22. };  
  23.   
  24. #endif // WIDGET_H  

widget.cpp

[cpp]  view plain  copy
  1. #include "widget.h"  
  2. #include "ui_widget.h"  
  3. #include<QDebug>  
  4. Widget::Widget(QWidget *parent) :  
  5.     QWidget(parent),  
  6.     ui(new Ui::Widget)  
  7. {  
  8.     ui->setupUi(this);  
  9. }  
  10.   
  11. Widget::~Widget()  
  12. {  
  13.     delete ui;  
  14. }  
  15. void Widget::enterEvent(QEvent *)  
  16. {  
  17.     qDebug()<<"鼠标移入";  
  18. }  
  19. void Widget::leaveEvent(QEvent *)  
  20. {  
  21.     qDebug()<<"鼠标移出";  
  22. }  

运行,放入鼠标 移出鼠标。

Starting E:\qtcreatorprojects\build-untitled2-Desktop_Qt_5_4_0_MinGW_32bit-Debug\debug\untitled2.exe...

鼠标移入

鼠标移出

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值