目次 - API(機能別) - イベント処理 - SDL_UserEvent

SDL_UserEvent

アプリケーション定義イベントの情報の構造体

フィールド

Uint32typeSDL_RegisterEvents()で得られた値
Uint32timestampイベントのタイムスタンプ
Uint32windowIDフォーカスのあるウィンドウ (可能なら)
Sint32codeユーザ定義のイベントコード
void*data1ユーザ定義の情報へのポインタ
void*data2ユーザ定義の情報へのポインタ

サンプルコード

Sint32 my_event_code;
void *significant_data;

Uint32 myEventType = SDL_RegisterEvents(1);
if (myEventType != ((Uint32)-1)) {
    SDL_Event event;
    SDL_memset(&event, 0, sizeof(event)); /* または SDL_zero(event); */
    event.type = myEventType;
    event.user.code = my_event_code;
    event.user.data1 = significant_data;
    event.user.data2 = 0;
    SDL_PushEvent(&event);
}

詳細

SDL_UserEventSDL_Eventのメンバである. このイベントは特殊で, SDLによって発生されることは決してなく, ユーザによってのみ発生される. イベントはSDL_PushEvent()でキューに入れることができる. 構造体の情報は完全に作成者が設定できる. 唯一要求されるのは, SDL_RegisterEvents()で得たtypeの値である.

関連項目(列挙体)

SDL_EventType

関連項目(関数)

SDL_PushEvent
SDL_RegisterEvents

SDL Wikiへのリンク

SDL_UserEvent - SDL Wiki