linux Qt QkeyEvent及驱动键盘按键捕获

news2024/11/25 3:45:24

基于正点原子

QT中有专门的类处理键盘事件的类QKeyEvent

1.include “QKeyEvent”

查看它的说明中的描述

也就是说接受按键事件在keyPressEvent和keyReleaseEvent这两个函数,继续查看

重构这个函数

查看输入的QKeyEvent类,发现有一个方法key返回哪一个按键按下,返回的按键为枚举Qt::Key的值

2.重构按键按下松开的函数

使用一个什么都没有的按键方便显示状态

3.运行,按下键盘上的0,显示按下,松开显示松开

4.转移到开发板上

查看驱动可以得知正点原子开发板上的按键驱动为键盘的114键值,即

Qt::Key_VolumeDown

修改对应内容,移植到开发板上

保存退出,打开终端

跳转到安装的交叉编译器目录

1.启用交叉编译器

2.查看是否启用成功

跳转到项目下

3.调用qmake生成makefile文件

4.调用make生成程序 

传输到开发板

./执行,尝试按键,查看文字变化,成功

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2061553.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MinerU pdf文档解析markdown格式、内容提取

参考: https://github.com/opendatalab/MinerU/blob/master/README_zh-CN.md demo在线网址: https://opendatalab.com/OpenSourceTools/Extractor/PDF/detail

Robot Operating System——创建动态链接文件项目的步骤

大纲 初始化环境创建Package代码添加依赖(package.xml)修改编译描述find_package寻找依赖库指定代码路径和编译类型(动态库)设置头文件路径链接依赖的库 编译测试参考资料 在 《Robot Operating System——创建可执行文件项目的步…

大数据-93 Spark 集群 Spark SQL 概述 基本概念 SparkSQL对比 架构 抽象

点一下关注吧!!!非常感谢!!持续更新!!! 目前已经更新到了: Hadoop(已更完)HDFS(已更完)MapReduce(已更完&am…

VMware虚拟机nat无法联通主机

VMware在nat模式下主机无法ping通虚拟机 原因: 虚拟机和对应的网卡不在一个网段 虚拟机开启了防火墙 解决方法: 首先判断虚拟机的网络ip是否和网卡在一个网段上 判断虚拟机使用的网卡 nat模式在VMware虚拟机中一般只有一个对应的网卡 如图笔者的nat网卡为VM…

基于机器学习的二手房房价数据分析与价格预测模型

有需要本项目的可以私信博主,提供远程部署讲解 本研究聚焦重庆二手房市场,通过创新的数据采集和分析方法,深入探讨影响房价的关键因素,并开发了预测模型。 我们首先利用Python编写的爬虫程序,巧妙规避了链家网站的反…

ClickHouse实时探索与实践 京东云

1 前言 京喜达技术部在社区团购场景下采用JDQFlinkElasticsearch架构来打造实时数据报表。随着业务的发展 Elasticsearch开始暴露出一些弊端,不适合大批量的数据查询,高频次深度分页导出导致ES宕机、不能精确去重统计,多个字段聚合计算时性能…

初识Linux · 权限

目录 前言: 1 预备知识 2 权限 2.1 文件的基本权限 2.2 修改权限的第一种做法 2.3 修改权限的第二种做法 2.4 权限的对比 2.5 文件类型 前言: 继上文我们将常用的指令介绍的七七八八了,本文着重探索Linux文件中的权限部分&#xff0…

docker部署postgresSQL 并做持久化

先安装docker,安装docker 方法自行寻找方法 然后安装pgsql 拉取镜像 docker pull registry.cn-hangzhou.aliyuncs.com/qiluo-images/postgres:latest运行容器 docker run -it --name postgres --privileged --restart always -e POSTGRES_PASSWORDZ6n8g4zJzC3mr…

手动与自动修复mfc140u.dll丢失的解决方法,mfc140u.dll在电脑中是什么样的存在

当您遇到“mfc140u.dll丢失”的错误时,通常意味着计算机上缺少Microsoft Foundation Class (MFC) 库的特定版本,该库是Visual Studio 2015的一部分。这种问题往往在启动某些应用程序或游戏时出现,并显示如“无法启动该程序,因为计…

可变参数模板(C++11)

这篇文章讲解的是C11的特性之一——可变参数模板,适合有一定基础的同学学习,如果是刚入门的同学可以看我过往的文章:C基础入门 可变参数模板(Variadic Templates)是C的一种高级特性,它允许你编写接受任意数…

8.20T3 无损加密(线性代数转LGV+状压dp+高维前缀和)

http://cplusoj.com/d/senior/p/NODSX2301C 对于式子: 这个神秘的线性代数形式比较难处理,但我们可以考虑其组合意义。行列式现存的可用组合意义之一就是LGV(矩阵式不太可用) 先把原先的矩阵转化为一个有向图。现在我们要构造一…

笔记本电脑无线网卡突然没有了

目录 笔记本电脑无线网卡突然没有了最优解决方案 笔记本电脑无线网卡突然没有了 记录一次笔记本无线网卡突然没有了的解决方案 显示黄色感叹号,试了几个安装驱动的软件都不行 最优解决方案 找到网卡的厂商官网,官网上下载驱动 比如我的无线网卡是Int…

【Hot100】LeetCode—146. LRU 缓存

目录 1-思路1-1 LRU知识点1-2 实现思路LRU的子数据结构① 双向链表 DLinkedNode 结点定义② 其他字段 LRU实现的方法① 初始化——LRUCache中初始化② public int get(int key) 取元素方法③ public void put(int key, int value) 存元素方法 2-实现⭐146. LRU 缓存——题解思路…

rufus制作ubantu的U盘安装介质时,rufus界面上的分区类型选什么?

rufus制作ubantu的U盘安装介质时,rufus软件界面上的分区类型选什么(如下图)? 在使用Rufus制作Ubuntu的U盘安装介质时,分区类型的选择取决于我们的计算机的引导方式。 以下是具体的选择建议: 1、查看计算机的引导方式…

JAVA设计模式之【单例模式】

1 类图 2 饿汉式单例 例如:静态块、静态成员 2.1 概念 类加载的时候就立即初始化,并且创建单例对象 2.2 优点 没有加任何的锁、执行效率比较高 2.3 缺点 类加载的时候就初始化,不管用与不用都占着空间,浪费了内存。 3 懒汉…

Java之迭代器的使用

Java之迭代器的使用 摘要基础知识List迭代器Map迭代器 摘要 本博客主要讲解容器的迭代器的使用,包括List、Set和Map等容器 基础知识 这是类的继承关系图 迭代器的原理(一开始迭代器并不指向任何有效元素): List迭代器 public class TestIterator …

VMware vSphere Client无法访问和连接ESXi虚拟主机解决思路

文章目录 前言1. 问题现象2. 问题原因3. 解决方法4. 参考文章 前言 注意 : 可以先看看参考文章那里,在回过来看 1 、 2 、3 1. 问题现象 版本:VMware vCenter Server 5.5.0 build-2442329 问题描述:用VMware vSphere Client 登录ESXI主机出…

【Linux —— 线程互斥】

Linux —— 线程互斥 1. 临界资源与临界区2. 互斥的定义3. 原子性4. 互斥量(Mutex)5. 互斥的实现示例 1. 临界资源与临界区 临界资源: 指的是多个线程或进程共享的资源,例如全局变量、文件、数据库等。由于这些资源的共享,可能会导致数据不一致或程序崩…

git commit 时发生:fatal: cannot lock HEAD ref

.git目录探析_.git文件在哪-CSDN博客https://blog.csdn.net/luofeng457/article/details/117577275 tree .git .git ├── branches ├── COMMIT_EDITMSG ├── config ├── description ├── FETCH_HEAD ├── HEAD ├── hooks │ ├── applypatch-msg.sample…

STM32的GPIO

GPIO基本控制 GPIO(General-Purpose input/output,通用输入/输出接口) 用于感知外部信号(输入模式)和控制外部设备(输出模式) 简单模块:LED,按键,蜂鸣器,温度传感器,使用一个GPIO…