销毁SDL_Window而不破坏本机窗口句柄?

时间:2018-09-14 08:43:35

标签: video rendering sdl-2

我正在实现一个视频播放器API sw,它可以为给定的Rtsp地址播放视频。 使用API​​的软件将窗口句柄传递给API,并且API在其上呈现视频。 我尝试使用SDL渲染帧,这是可以的。但是,当我使用SDL_DestroyWindow()销毁SDL_Window时,其他软件传递其句柄的本机窗口也将销毁。 然后我评论了SDL_DestroyWindow部分,但是这次重用相同的本机窗口句柄是一个问题。当其他软件通过具有相同本机窗口句柄的API并使用SDL_CreateWindowFrom()创建SDL_Window时,其他软件将无法获取本机窗口单击事件。 有没有一种方法可以将SDL_Window再次转换为本机窗口?或您对我的问题有解决方案的建议吗?

1 个答案:

答案 0 :(得分:1)

正如Keltar所说,ShowWindow(handle,SW_SHOW)解决了这个问题。由于调用SDL_DestroyWindow()时SDL隐藏了窗口,因此应通过调用ShowWindow(handle,SW_SHOW)来显示窗口