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)

相关推荐
L-ololois26 分钟前
【AI】模型vs算法(以自动驾驶为例)
人工智能·算法·自动驾驶
♚卜卦2 小时前
面向对象 设计模式简述(1.创建型模式)
开发语言·设计模式
安全系统学习2 小时前
网络安全之RCE简单分析
开发语言·python·算法·安全·web安全
Swift社区3 小时前
Swift 解法详解:如何在二叉树中寻找最长连续序列
开发语言·ios·swift
qwertyuiop_i3 小时前
汇编(函数调用)
汇编·windows·函数调用
yutian06063 小时前
C# 支持 ToolTip 功能的控件,鼠标悬停弹提示框
开发语言·microsoft·c#
byte轻骑兵3 小时前
【C++特殊工具与技术】优化内存分配(四):定位new表达式、类特定的new、delete表达式
开发语言·c++
奔跑的小十一3 小时前
JDBC接口开发指南
java·数据库
chao_7893 小时前
标注工具核心代码解析——class AnnotationVie【canvas.py]
开发语言·python·qt5
GEEK零零七4 小时前
Leetcode 3299. 连续子序列的和
算法·leetcode·动态规划