将红外遥控器制作成qt自定义键盘,
有两种方法来处理qt自定义键盘。一种是直接编译qt的源码,另外一种是制作qt插件,通过加载插件来使用键盘。两种方法各有不同,但实现的效果是一样的。我使用的是插件法,因为不需再编译源码,修改方便。
环境:ubuntu10.04+qtcreator2.5.2+QtEmbedded-4.5.3-arm
1、编写红外驱动
2、打开qtcreator2.5.2,创建一个动态库工程,并生成一个类,库名为sbox4x4,类名为sbox4x4Handler;
3、实现Handler类
修改sbox4x4handler.h,加入下面三个头文件:
#include <QObject>
#include <QtGui/QWSKeyboardHandler>
#include <QSocketNotifier>
将Sbox4x4修改成 QObject和QWSKeyboardHandler,并加入Q_OBJECT声明,并在类中添加一个void kbdReadyRead()的slot函数,用于将来当键盘设备可读时读取键值: