【QT for Android】键盘鼠标信息获取
前言
在QT 上创建android 环境,基于Android Studio 进行虚拟机+sdk 等相关配置下载,版本信息如下:
Android for x86 (GCC 4.9, Qt 5.10.1 for Android x86)
SDK Version: 26.1.1, NDK Version: 16.1.4479499
jdk1.8.0_251
键盘输入信息获取
主要是采用KeyEvent::keyPressEvent(QKeyEvent * event)
,对其进行复写,输出event->key()
是int 分别代表不同的键盘信息,具体QT自带如: Qt::Key_Escape、Qt::Key_Return等。当然如果仅仅只是测试,也可以用statusBar()
进行展示,以statusBar()->showMessage(QStringLiteral("")+event->key(),3000);
会直接输出对应信息。关于这部分研究,主要参考了大神Qt 事件系统之三:键盘事件的博文,里面有详细的关于函数的使用。基于对其学习,整理封装类如下,有需要可以基于此基础增加具体逻辑处理:
keyevent.h
#ifndef KEYEVENT_H
#define KEYEVENT_H
#include <QMainWindow>
#include <QKeyEvent>
namespace Ui {
class KeyEvent;
}
class KeyEvent : public QMainWindow
{
Q_OBJECT
public:
explicit KeyEvent(QWidget *parent = 0);
~KeyEvent();
void keyPressEvent(QKeyEvent *);
private:
Ui::KeyEvent *ui;
};
#endif // KEYEVENT_H
keyevent.cpp
#include "keyevent.h"
#include "ui_keyevent.h"
#include <QDebug>
KeyEvent::KeyEvent(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::KeyEvent)