| Uint32 | type | SDL_WINDOWEVENT | 
| Uint32 | timestamp | イベントのタイムスタンプ | 
| Uint32 | windowID | 関連のあるウィンドウ | 
| Uint8 | event | SDL_WindowEventID | 
| Sint32 | data1 | イベントによって異なるデータ | 
| Sint32 | data2 | イベントによって異なるデータ | 
void PrintEvent(const SDL_Event *event)
{
    if (event->type == SDL_WINDOWEVENT) {
        switch (event->window.event) {
        case SDL_WINDOWEVENT_SHOWN:
            SDL_Log("ウィンドウ %d が見えるようになった", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_HIDDEN:
            SDL_Log("ウィンドウ %d が見えないようになった", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_EXPOSED:
            SDL_Log("ウィンドウ %d が現れた", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_MOVED:
            SDL_Log("ウィンドウ %d が %d,%d へ移動した", event->window.windowID, event->window.data1, event->window.data2);
            break;
        case SDL_WINDOWEVENT_RESIZED:
            SDL_Log("ウィンドウ %d の大きさが %dx%d になった", event->window.windowID, event->window.data1, event->window.data2);
            break;
        case SDL_WINDOWEVENT_SIZE_CHANGED:
            SDL_Log("ウィンドウ %d の大きさが %dx%d に変わった", event->window.windowID, event->window.data1, event->window.data2);
            break;
        case SDL_WINDOWEVENT_MINIMIZED:
            SDL_Log("ウィンドウ %d が最小化された", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_MAXIMIZED:
            SDL_Log("ウィンドウ %d が最大化された", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_RESTORED:
            SDL_Log("ウィンドウ %d 通常の大きさと位置になった", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_ENTER:
            SDL_Log("マウスがウィンドウ %d に入った", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_LEAVE:
            SDL_Log("マウスがウィンドウ %d から出た", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_FOCUS_GAINED:
            SDL_Log("ウィンドウ %d がキーボードフォーカスを得た", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_FOCUS_LOST:
            SDL_Log("ウィンドウ %d がキーボードフォーカスを失った", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_CLOSE:
            SDL_Log("ウィンドウ %d が閉じた", event->window.windowID);
            break;
#if SDL_VERSION_ATLEAST(2, 0, 5)
        case SDL_WINDOWEVENT_TAKE_FOCUS:
            SDL_Log("ウィンドウ %d がフォーカスを与えられた", event->window.windowID);
            break;
        case SDL_WINDOWEVENT_HIT_TEST:
            SDL_Log("ウィンドウ %d が特殊なヒットテストを行った", event->window.windowID);
            break;
#endif
        default:
            SDL_Log("ウィンドウ %d の不明なイベント %d", event->window.windowID, event->window.event);
            break;
        }
    }
}