Qt鼠标点击事件处理:按Escape键退出程序

创建项目

Qt 入门实战教程(目录)

首先,创建一个名称为QtKeyEscape的Qt默认的窗口程序。

参考 :Qt Creator 创建 Qt 默认窗口程序

Qt响应键盘Escape事件

打开Qt Creator >>编辑 >> 项目 >> Headers>> mainwindow.h

右键 class MainWindow >> Refactor >> Insert Virtual Function of Base Classes

如下图所示:

选择 QWidget >> keyPressEvent

Insertion options:

>> Insert definitions in implementation file >> OK

如下图所示:

Qt按Escape键退出程序

打开 Sources >> mainwindow.cpp

添加头文件包含

>> #include <QKeyEvent>

退出当前程序

对于单窗口的Qt程序来说,只需要关闭当前窗口即可。

关闭当前窗口只需要使用 this->close(); 即可关闭退出当前窗口。

具体实现如下:给你的窗口类添加下面的成员函数实现,即可。

在 MainWindow::keyPressEvent 中退出的代码

cpp 复制代码
void MainWindow::keyPressEvent(QKeyEvent *event)
{
    if(event->key() == Qt::Key_Escape)
    {
        this->close();
    }
}

此时运行程序,弹出窗口:

按下Escape键,窗口消失(程序退出)。

代码下载

百度云

链接:https://pan.baidu.com/s/1ZTsZqW2nLXOctb58_1G4Pw

提取码:1234

Gitee 码云

QtKeyEscape · CalmReason/learn-qt-with-code - 码云 - 开源中国 (gitee.com)

相关推荐
BD_Marathon2 小时前
【Flink】部署模式
java·数据库·flink
csudata3 小时前
十年磨一剑,中启乘数CData数据库一体机重新定义企业级数据库解决方案
数据库·数据库开发
TDengine (老段)4 小时前
TDengine IDMP 应用场景:工业锅炉监控
大数据·数据库·物联网·信息可视化·时序数据库·tdengine
CodeCraft Studio5 小时前
3D文档控件Aspose.3D实用教程:使用 C# 构建 OBJ 到 U3D 转换器
开发语言·3d·c#·3d渲染·aspose·3d文件格式转换·3d sdk
superlls5 小时前
(Redis)主从哨兵模式与集群模式
java·开发语言·redis
让我们一起加油好吗5 小时前
【基础算法】初识搜索:递归型枚举与回溯剪枝
c++·算法·剪枝·回溯·洛谷·搜索
郝学胜-神的一滴5 小时前
Horse3D游戏引擎研发笔记(七):在QtOpenGL环境下,使用改进的Uniform变量管理方式绘制多彩四边形
c++·3d·unity·游戏引擎·图形渲染·虚幻·unreal engine
dreams_dream6 小时前
Django的Settings 配置文件详解
数据库·django·sqlite
chenglin0166 小时前
C#_gRPC
开发语言·c#
骑驴看星星a7 小时前
数学建模--Topsis(Python)
开发语言·python·学习·数学建模