QT6(鼠标键盘事件)

QT6


鼠标键盘事件

cpp 复制代码
#include "widget.h"
#include "./ui_widget.h"

#include <QMouseEvent>
#include <QKeyEvent>
#include <QMessageBox>
#include <QStatusBar>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    // 不用按下鼠标也有效果
    setMouseTracking(true);
    ui->setupUi(this);

    connect(ui->pushButton,&QPushButton::clicked,qApp,&QApplication::quit);
}

Widget::~Widget()
{
    delete ui;
}



void Widget::mouseMoveEvent(QMouseEvent *event)
{
    // 鼠标事件监听
    int x = event->pos().x();
    int y = event->pos().y();
    QString text = "坐标:" + QString::number(x) + "," + QString::number(y);
    ui->label->setText(text);

}

void Widget::keyPressEvent(QKeyEvent *event)
{
    // 鼠标事件监听
    if(event->key() == Qt::Key_Escape)
        qApp->quit();



    if(event->key() == Qt::Key_Q)
        QMessageBox::information(this,"按键监听","按下了Q键");

}

效果展示

相关推荐
油炸自行车1 个月前
【Qt】Window环境下搭建Qt6、MSVC2022开发环境(无需提前安装Visual Studio)
qt·visual studio·qt6·msvc2022·qt creator 17.0
qwertyuiop_i2 个月前
QT6(QFileSystemModel和QTreeView)
qt6·qtreeview
qwertyuiop_i2 个月前
QT6(QStringListModel和QListView)
qt6·qlistview·qstringlistmod
qwertyuiop_i2 个月前
使用CMAKE-GU生成Visual Studio项目
visual studio·qt6·sln
charlie1145141915 个月前
基于Qt6 + MuPDF在 Arm IMX6ULL运行的PDF浏览器——MuPDF Adapter文档
arm开发·qt·学习·pdf·教程·设计·qt6
whoispo7 个月前
Imgui处理glfw的鼠标键盘的方法
opengl·imgui·gflw·鼠标键盘事件
容沁风9 个月前
Qt6+libonvif从大华相机抓拍图片
c++·qt6·海康威视·大华·snap
刘亿辰1 年前
(三)第一个Qt程序“Qt版本的HelloWorld”
c++·qt·qt6·hello world·qt6.2.2
QT界面美化1 年前
QT硬件通讯基础
qt·qt6·qt quick