读书笔记(direct input 部分)
1.取得IDirectInput接口,DirectInput8Create
2.获得接口后创建设备(鼠标,键盘...)
3.设置设备协作等级,SetCooperativeLevel
4.设置数据格式,SetDataFormat
5.获取设备,Acquire
6.使用设备,取得状态信息
7.释放设备
例子如下:
if (DirectInput8Create(main_instance,DIRECTINPUT_VERSION,IID_IDirectInput8, (void **)&lpdi,NULL)!=DI_OK)
return(0);
// create a keyboard device //////////////////////////////////
if (lpdi->CreateDevice(GUID_SysKeyboard, &lpdikey, NULL)!=DI_OK)
return(0);
// set cooperation level
if (lpdikey->SetCooperativeLevel(main_window_handle,
DISCL_NONEXCLUSIVE | DISCL_BACKGROUND)!=DI_OK)
return(0);
// set data format
if (lpdikey->SetDataFormat(&c_dfDIKeyboard)!=DI_OK)
return(0);
// acquire the keyboard
if (lpdikey->Acquire()!=DI_OK)
return(0);
lpdikey->GetDeviceState(256, (LPVOID)keyboard_state);
// release keyboard
lpdikey->Unacquire();
lpdikey->Release();
lpdi->Release();
该博客是关于Direct Input部分的读书笔记,介绍了使用Direct Input的步骤,包括取得IDirectInput接口、创建设备、设置协作等级和数据格式、获取和使用设备、释放设备等,并给出了使用键盘设备的代码示例。
3727

被折叠的 条评论
为什么被折叠?



