input_event结构体详解
来源:互联网 发布:开淘宝店的银行卡 编辑:程序博客网 时间:2024/05/23 15:19
关键结构体input_event信息:
struct input_event {
struct timeval time;
__u16 type;
__u16 code;
__s32 value;
};
type: 设备类型。可以设置为:
#define EV_SYN 0x00 表示设备支持所有的事件
#define EV_KEY 0x01 键盘或者按键,表示一个键码
#define EV_REL 0x02 鼠标设备,表示一个相对的光标位置结果
#define EV_ABS 0x03 手写板产生的值,其是一个绝对整数值
#define EV_MSC 0x04 其他类型
#define EV_LED 0x11 LED灯设备
#define EV_SND 0x12 蜂鸣器,输入声音
#define EV_REP 0x14 允许重复按键类型
#define EV_PWR 0x16 电源管理事件
#define EV_FF_STATUS 0x17
#define EV_MAX 0x1f
#define EV_CNT (EV_MAX+1)
code:根据Type的不同而含义不同。
例如:
Type为EV_KEY时,code表示键盘code或者鼠标Button值。
取值范围:
#define EV_SYN 0x00
到:
#define KEY_MIN_INTERESTING KEY_MUTE
#define KEY_MAX 0x2ff
#define KEY_CNT (KEY_MAX+1)
Type为EV_REL时,code表示操作的是哪个坐标轴,如:REL_X,REL_Y。(因为鼠标有x,y两个轴向,所以一次鼠标移动,会产生两个input_event)
取值范围:
#define REL_X 0x00
#define REL_Y 0x01
#define REL_Z 0x02
#define REL_RX 0x03
#define REL_RY 0x04
#define REL_RZ 0x05
#define REL_HWHEEL 0x06
#define REL_DIAL 0x07
#define REL_WHEEL 0x08
#define REL_MISC 0x09
#define REL_MAX 0x0f
#define REL_CNT (REL_MAX+1)
Type为EV_ABS时,code表示绝对坐标轴向。
value:根据Type的不同而含义不同。
例如:
Type为EV_KEY时,value: 0表示按键抬起。1表示按键按下。(4表示持续按下等?)。
Type为EV_REL时,value: 表明移动的值和方向(正负值)。
Type为EV_ABS时,code表示绝对位置。
struct input_event {
struct timeval time;
__u16 type;
__u16 code;
__s32 value;
};
type: 设备类型。可以设置为:
#define EV_SYN 0x00 表示设备支持所有的事件
#define EV_KEY 0x01 键盘或者按键,表示一个键码
#define EV_REL 0x02 鼠标设备,表示一个相对的光标位置结果
#define EV_ABS 0x03 手写板产生的值,其是一个绝对整数值
#define EV_MSC 0x04 其他类型
#define EV_LED 0x11 LED灯设备
#define EV_SND 0x12 蜂鸣器,输入声音
#define EV_REP 0x14 允许重复按键类型
#define EV_PWR 0x16 电源管理事件
#define EV_FF_STATUS 0x17
#define EV_MAX 0x1f
#define EV_CNT (EV_MAX+1)
code:根据Type的不同而含义不同。
例如:
Type为EV_KEY时,code表示键盘code或者鼠标Button值。
取值范围:
#define EV_SYN 0x00
到:
#define KEY_MIN_INTERESTING KEY_MUTE
#define KEY_MAX 0x2ff
#define KEY_CNT (KEY_MAX+1)
Type为EV_REL时,code表示操作的是哪个坐标轴,如:REL_X,REL_Y。(因为鼠标有x,y两个轴向,所以一次鼠标移动,会产生两个input_event)
取值范围:
#define REL_X 0x00
#define REL_Y 0x01
#define REL_Z 0x02
#define REL_RX 0x03
#define REL_RY 0x04
#define REL_RZ 0x05
#define REL_HWHEEL 0x06
#define REL_DIAL 0x07
#define REL_WHEEL 0x08
#define REL_MISC 0x09
#define REL_MAX 0x0f
#define REL_CNT (REL_MAX+1)
Type为EV_ABS时,code表示绝对坐标轴向。
value:根据Type的不同而含义不同。
例如:
Type为EV_KEY时,value: 0表示按键抬起。1表示按键按下。(4表示持续按下等?)。
Type为EV_REL时,value: 表明移动的值和方向(正负值)。
Type为EV_ABS时,code表示绝对位置。
0 0
- input_event结构体详解
- linux struct input_event结构体详解
- struct input_event结构体定义
- struct input_event详解
- input_event
- struct input_event
- struct input_event
- struct input_event
- struct input_event
- struct input_event
- 结构体对齐详解
- addrinfo结构体详解
- stat结构体 详解
- file_operation结构体详解
- PRINTDLG结构体详解
- memcached 结构体详解
- 结构体详解
- 结构体对齐详解
- cvSetCaptureProperty
- Nutch1.7学习笔记4:Generator源代码分析
- Listener与Adapter比较区别
- wget 的用法详解
- 云计算的本质是服务
- input_event结构体详解
- VS2010 & Qt,版本Release时:Debugging information for "project.exe" cannot be found or does not match.
- sina 微博 Oauth2.0接口
- MVC5+EF6 入门完整教程八
- Nutch1.7学习笔记5:Fetcher源代码分析
- _T “CButton::Create”: 不能将参数 1 从“const char [5]”转换为“LPCTSTR”
- Android Tips: 寻找当前的Activity
- C#字符串与字节数组互转
- 开发中的popwindow