如果您使用 SDL_SetVideoMode() 创建窗口,您将返回一个表面,而不是窗口句柄。有没有办法获取SDL_Window句柄?我知道有一个 SDL_GetWindowFromID 函数,但我也不确定如何获取 ID,除了 SDL_GetWindowID 函数之外,这需要我已经拥有窗口句柄。
有什么建议么?请注意,保持跨平台可移植性非常重要,因此如果可能的话,我更愿意坚持使用内置的 SDL 功能。
如果有帮助的话,我正在尝试获取和设置窗口位置和窗口大小,而这些函数需要窗口句柄。
谢谢!
编辑:我还应该提到,我正在根据用户的请求更改视频模式,因此我不能只使用默认 ID 1,因为每次调用 SDL_SetVideoMode() 时该 ID 都会更改。
Ale*_*lli -1
SDL_SetVideoMode返回基于视频帧缓冲区的表面,而不是基于窗口的表面(就像SDL_GetVideoSurface)。您似乎假设所有表面都对应于窗口,但事实并非如此。