分享
 
 
 

了解DirectInput

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

了解DirectInput

本节主要介绍Microsoft DirectInput的底层结构及它与Microsoft Windows消息系统的关系。

DirectInput对象

与Windows交互

DirectInput的实现,可参照“应用DirectInput”。

DirectInput对象

一个DirectInput的专用输入实现由DirectInput对象组成,其支持IDirectInput8 COM接口,并通过DirectInputDevice对象访问每个输入设备的数据。每个DirectInputDevice对象依次包含设备对象,单独的控制器或转换器,如按键、按钮或者轴。设备对象在这里也被称为设备对象实例。

一个DirectInputDevice对象代表一个输入设备,如鼠标、键盘或游戏杆。在DirectInput的API中,游戏杆(joystick)是任意不同于鼠标或键盘的设备。有些硬件其实是不同类型的输入设备的组合,如带触摸板的键盘,就可以表示两个或以上的DirectInputDevice对象。力回馈设备可以通过一个单独的包含输入输出的游戏杆表示。

DirectInputDevice对象是实现IDirectInputDevice8接口的实例。应用程序可以通过IDirectInputDevice8::EnumObjects方法确定可用设备对象的数量及类型。个别的设备对象不会包装成代码对象,但在DIDEVICEOBJECTINSTANCE结构中有描述。

力回馈的效果以IDirectInputEffect接口来表示,该接口中包含了创建、修改、开始及停止等效果的方法。

所有的DirectInput接口都包括ANSI及Unicode的实现,如果编译时,已经定义了UNICODE,就会使用UNICODE版本。

与Windows交互

由于DirectInput直接与设备驱动进行交互,所以它可以取消或忽略Windows的鼠标及键盘消息。同样也可以忽略控制面板中键盘及鼠标的设置。但还是会使用游戏杆或其他游戏控制器的设置。

DirectInput不识别键盘字符的重复设置(译者注:应该是说不象键盘输入中当一个键按得时间长一点的话就会产生一系列的消息吧?)。当使用缓冲数据的时候,DirectInput会把每一次的按下与释放看作一个单独的事件,而且不产生副本。当使用立即数据的时候,DirectInput就只会专注于当前按键的状态,而不是Windows所谓的键盘事件。

DirectInput不实现字符转换或变换。例如,SHIFT键与其他键将同等对待,而不是另外一个键的修饰符。不管用户的系统语言设置是什么,按键总会返回相同的标识。

Windows 2000中,, 获得互斥模式中的键盘的话,将阻止其他后续的应用程序接收键盘数据。

由于DirectInput直接访问鼠标驱动,因此它将绕过Windows鼠标数据解释子系统。依靠鼠标光标导航的应用程序应该继续使用标准的Windows鼠标消息及Microsoft Win32函数。

当在互斥方式下使用系统鼠标时,DirectInput会删除鼠标消息,因此Windows将不能显示标准光标。

DirectInput会忽略控制面板中的设置,如加速、按钮交换。但DirectInput会自行识别驱动中的设置。如如果用户有一个三键鼠标,并使用驱动实用工具把中键设置为双击的快捷方式,DirectInput就会在中键单击时报告为两次主键的单击即双击。

原文:Understanding DirectInput, DirectX SDK

© 2004 Microsoft Corporation. All rights reserved.

翻译:Room3rd@hotmail.com,2004-11-27

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有