QT 鼠标 QMouseEvent
鼠标事件
Qt鼠标事件分为四种:
- 鼠标移动事件:当鼠标移动到窗口上时触发,包括鼠标进入窗口、鼠标离开窗口、鼠标移动到窗口内的不同位置。
- 鼠标按下事件:当鼠标按下某个按键时触发,包括左键按下、右键按下、滚轮按下。
- 鼠标释放事件:当鼠标释放某个按键时触发,包括左键释放、右键释放、滚轮释放。
- 鼠标双击事件:当鼠标双击某个按键时触发,包括左键双击、右键双击、滚轮双击。
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QLabel>//标签
#include <QMouseEvent>//鼠标事件
#include <QStatusBar>//状态栏
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
//覆写函数
void mouseMoveEvent(QMouseEvent *event) override;//鼠标移动事件
void mousePressEvent(QMouseEvent *event) override;//鼠标按下事件
void mouseReleaseEvent(QMouseEvent *event) override;//鼠标释放事件
//private slots:
// void updateMousePos(QPoint pos);//更新鼠标位置
//
//
//signals:
// void mousePosChanged(QPoint pos);//鼠标位置改变信号
private:
QLabel *statuslable;
QLabel *mouselablepos;
};
#endif // MAINWINDOW_H
#include "mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
setWindowTitle("鼠标事件");