コード例 #1
0
ファイル: keyboard.c プロジェクト: oyjGit/LCUI
static void OnKeyboardEvent( LCUI_SystemEvent *e, void *arg )
{
	if( e->type == LCUI_KEYDOWN ) {
		LCUIKeyBoard_HitKey( e->key_code );
	}
	else if( e->type == LCUI_KEYUP ) {
		LCUIKeyBoard_ReleaseKey( e->key_code );
	}
}
コード例 #2
0
ファイル: keyboard.c プロジェクト: aem3372/LCUI
/* 添加键盘的按键按下事件 */
void LCUI_PostKeyDownEvent( int key_code )
{
	key_state *data_ptr;
	LCUI_SystemEvent event;
	
	LCUIMutex_Lock( &record_mutex );
	data_ptr = KeyStateRecord_FindData( key_code );
	LCUIMutex_Unlock( &record_mutex );
	/* 已经按下过的按键就不用再触发KEYDOWN事件了 */
	if( data_ptr && data_ptr->state == LCUIKEYSTATE_PRESSED ) {
		return;
	}
	event.type = LCUI_KEYDOWN;
	event.which = key_code;
	LCUIKeyBoard_HitKey( key_code );
	LCUI_PostEvent( "keydown", &event );
}