SDL 2.0 Windows 8关闭alt +进入全屏

时间:2014-03-03 14:48:49

标签: windows-8 sdl fullscreen

我正在编写一个基于SDL 2.0和OpenGL渲染的游戏。我需要自定义处理全屏模式,但在Windows 8上使用alt + enter会导致强制全屏模式。

如何在Windows 8上通过alt + enter关闭自动开启全屏模式?

如何避免在Windows 8上通过alt + Enter切换全屏模式,而不仅仅是使用SDL 2.0?

1 个答案:

答案 0 :(得分:2)

我意识到通过Direct3D,我可以做我需要的事情:

IDXGIDevice * pDXGIDevice;
g_d3dDevice->QueryInterface(__uuidof(IDXGIDevice), (void**)&pDXGIDevice);

IDXGIAdapter * pDXGIAdapter;
pDXGIDevice->GetParent(__uuidof(IDXGIAdapter), (void **)&pDXGIAdapter);

IDXGIFactory * pIDXGIFactory;
pDXGIAdapter->GetParent(__uuidof(IDXGIFactory), (void **)&pIDXGIFactory);
pIDXGIFactory->MakeWindowAssociation(g_hWnd, DXGI_MWA_NO_ALT_ENTER);

现在我想弄清楚如何在OpenGL代码中获取IDXGIFactory *。

我尝试创建新工厂,枚举适配器,但所有适配器都给我新创建的工厂,它不能改变任何windowAssociations ......