SDL_SetWindowSize 会触发 window 事件吗?

Does SDL_SetWindowSize trigger a window event?

在 SDL2 中,当您在运行时通过拖动角来调整 window 的大小时,将触发 window 调整大小的事件,并且可以像这样使用:

SDL_Event e;
int width, height;
SDL_PollEvent(&e);
if(e.type == SDL_WINDOWEVENT && e.window.event == SDL_WINDOWEVENT_RESIZED)
{
    width = e.window.data1;
    height = e.window.data2;
}

如果我像这样手动调整 window 的大小:

SDL_SetWindowSize(window, myWidth, myHeight);

(documentation) 这会触发像上面那样的 window 事件吗?

是的,就像SDL_SetWindowFullscreen ()一样。 SDL_SetWindowSize () 触发 window 事件。从技术上讲,我认为它只是调整 window 的大小,这被视为用户手动调整它的大小。

使用SDL_WINDOWEVENT_RESIZED,答案是否定的。但是触发了 SDL_WINDOWEVENT_SIZE_CHANGED 事件。