c++ - 在 SDL 1.2 中移动 SDL 窗口

标签 c++ qt ffmpeg sdl sdl-1.2

我在 MAC 上使用带有 FFmpeg 的 SDL 1.2。我正在尝试使用 FFmpeg 和 SDL 构建视频播放器。我正在 SDL_Surface 上观看我的视频。我的播放器工作正常。现在我的问题是,我想移动 SDL 窗口而不从标题栏拖动它。 SDL 1.2 框架中是否有用于移动 SDL_Surface 的函数/方法。

最佳答案

SDL 1.2 没有用于移动窗口的 API。 SDL 2.0 对多窗口和一般窗口管理有更好的支持。
参见 http://wiki.libsdl.org/SDL_SetWindowPosition

要使用 SDL 1.2 执行此操作,您需要使用窗口句柄进行特定于平台的调用。您可以使用 SDL_GetWMInfo() 获取它。

如果您只需要设置窗口的初始位置使其居中,那么在 SDL_SetVideoMode() 之前尝试此操作:

SDL_putenv("SDL_VIDEO_WINDOW_POS=center");

关于c++ - 在 SDL 1.2 中移动 SDL 窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30047823/

相关文章:

c++ - 如何在 eclipse 中构建代码之前运行 vcvars32.bat?

c++ - 插件中的 qt 信号/插槽

c++ - 如何让QtCreator中的应用程序使用KDE oxygen主题?

ffmpeg - 在 RTX 3080 上使用 ffmpeg 在 h264 中编码失败

video - ffmpeg 连接并保留元数据流

c++ - 在 Microsoft Visual Studio 2010 中添加 .lib 文件

c++ - 使用 { } 的 Visual Studio 2012 C++ 数组初始化

android - 铿锵++ : error: linker command failed with exit code 1 Qt Android

ffmpeg - 将两个 mkv 视频合二为一,但将主题放在不同的轨道上

c++ - 当基类为一个方法共享相同的名称时,多重继承 C++ 有一些限制吗?