【Troubleshot】Qt 长按按键 keyPressEvent keyReleaseEvent 自动重复问题

问题描述

处理按键释放时发现 按键长按的情况下,keyPressEvent keyReleaseEvent 循环进入,表现为 press release press release press release press release ...

原因分析:

Qt 默认启用自动重复,长按是触发了按键时间的自动重复。

解决方案:

查看文档:

按键 真实按下/释放 isAutoRepeat false

重复屏蔽:

cpp 复制代码
void CarlaSim::keyPressEvent(QKeyEvent *e)
{

    if(e->isAutoRepeat()){
        return ;
    }
QWidget::keyPressEvent(e);
}
相关推荐
Sammyyyyy13 分钟前
2025年,Javascript后端应该用 Bun、Node.js 还是 Deno?
开发语言·javascript·node.js
William一直在路上1 小时前
Python数据类型转换详解:从基础到实践
开发语言·python
看到我,请让我去学习1 小时前
Qt— 布局综合项目(Splitter,Stacked,Dock)
开发语言·qt
创想未来CTF1 小时前
Qt同步处理业务并禁用按钮
qt
GUET_一路向前2 小时前
【C语言防御性编程】if条件常量在前,变量在后
c语言·开发语言·if-else·防御性编程
曳渔2 小时前
UDP/TCP套接字编程简单实战指南
java·开发语言·网络·网络协议·tcp/ip·udp
三千道应用题2 小时前
WPF&C#超市管理系统(6)订单详情、顾客注册、商品销售排行查询和库存提示、LiveChat报表
开发语言·c#·wpf
hqxstudying2 小时前
JAVA项目中邮件发送功能
java·开发语言·python·邮件
咪咪渝粮2 小时前
JavaScript 中constructor 属性的指向异常问题
开发语言·javascript
最初的↘那颗心2 小时前
Java HashMap深度解析:原理、实现与最佳实践
java·开发语言·面试·hashmap·八股文