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)

相关推荐
疯狂打码的少年4 小时前
【数据库技术】关系模型基本概念(关系/属性/元组/键)
java·服务器·数据库·笔记
OPEN-F4 小时前
C++进阶教程:继承与多态
开发语言·c++
DogDaoDao6 小时前
Windows 开发提效工具全景指南:60+ 工具的工程化分层配置
windows·git·程序员·开发工具·powershell·everything·msys2
鹿角片ljp6 小时前
LeetCode 236. 二叉树的最近公共祖先|递归后序
算法
普马萨特6 小时前
实体与位置关系的数据从哪里来:获取、治理与仍待解决的问题
网络·数据库
luj_17686 小时前
大律师考核应重能力与科技素养
c语言·开发语言·c++·经验分享·算法
无定义_6 小时前
Floyd——Warshall
算法
醉颜凉6 小时前
MySQL 8 忘记 root 密码?这两种方法帮你轻松解决
数据库·mysql·adb
刃神太酷啦6 小时前
Linux 系统 MySQL 完整安装配置教程:从卸载 MariaDB 到优化 my.cnf----《Hello MySQL!》(1)
android·linux·c语言·c++·mysql·leetcode·mariadb
RestCloud6 小时前
集成链路监控体系搭建:接口调用、数据流转与异常告警全覆盖
数据库·数据安全·ipaas·api管理·数据监控·集成平台·api 治理