首先,确保你已经安装了SDL库,并在代码中包含了相关头文件:#include <SDL.h> 获取到已有窗体的句柄(通常是操作系统提供的原生窗口句柄)。 使用SDL_CreateWindowFrom函数创建一个SDL窗口对象,并传入窗体句柄作为参数。例如: // 获取到已有窗体的句柄,这里假设变量名为existingHandle // 创建SDL窗口并绑定已有窗体 SDL_...
首先,在Qt项目中引入SDL库。可以通过将SDL的头文件和库文件添加到Qt项目的.pro文件中来实现。 在需要创建窗体的地方,调用SDL_Init()函数初始化SDL。 使用QWidget或QWindow等Qt提供的窗口对象,获取其原生句柄(例如HWND或XID)。 调用SDL_CreateWindowFrom函数,并将获取到的原生句柄作为参数传递进去。 下面是一个简单...
{sdl_window_=SDL_CreateWindow(u8"webrtc_player_window",// 窗口标题SDL_WINDOWPOS_CENTERED,SDL_WINDOWPOS_CENTERED,// 窗口位置win_width_,win_height_,// 窗口宽高SDL_WINDOW_OPENGL|SDL_WINDOW_BORDERLESS|SDL_WINDOW_ALLOW_HIGHDPI// 窗口属性,指定使用OpenGL); }else{sdl_window_=SDL_CreateWindowFrom(...
What is the use of SDL_CreateWindowFrom() if you don't get any events anyway? So this functionality mentioned is a must if SDL2 should be used for making GUI's for audio plugins. And it would be a great usecase as SDL is phenomenal for easy use of bitmap graphics that most of al...
原因: 调用SDL_DestroyWindow()事,SDL会隐藏hwnd对应的窗体(或控件) SDL_HideWindow(window); voidSDL_DestroyWindow(SDL_Window*window) { SDL_VideoDisplay*display; CHECK_WINDOW_MAGIC(window,); window->is_destroying =SDL_TRUE;/*Restore video mode, etc.*/SDL_HideWindow(window);//...}...
在需要创建窗体的地方,调用SDL_Init(SDL_INIT_VIDEO)初始化SDL视频子系统。 使用QWindow::fromWinId()方法获取一个Qt窗口的原生句柄。 调用SDL_CreateWindowFrom()函数,将该句柄传递给它,创建一个基于该句柄的SDL窗口。例如: // 获取Qt窗口的原生句柄