19,468
社区成员
发帖
与我相关
我的任务
分享
void CGLSample1View::OnDraw(CDC* pDC)
{
// 绘制物体
...
SwapBuffers(pDC->GetSafeHdc());
}
void CGLSample1View::OnViewFullscreen()
{
if (m_bChange)
{
ChangeDisplaySettings(NULL, 0);
m_bChange = FALSE;
}
else
{
DEVMODE devMode;
ZeroMemory(&devMode, sizeof(DEVMODE));
devMode.dmSize = sizeof(DEVMODE);
devMode.dmBitsPerPel = 32;
devMode.dmPelsWidth = 800;
devMode.dmPelsHeight = 600;
devMode.dmDisplayFrequency = 60;
devMode.dmFields = DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT | DM_DISPLAYFREQUENCY;
if (ChangeDisplaySettings(&devMode, CDS_FULLSCREEN) == DISP_CHANGE_SUCCESSFUL)
{
m_bChange = TRUE;
}
else
{
MessageBox("不支持指定的分辨率!");
}
}
}
SetClassLong(GetSafeHwnd(), GCL_HBRBACKGROUND, (LONG)GetStockObject(DKGRAY_BRUSH));
Invalidate(FALSE);
UpdateWindow();
glFlush();
glFinish();
GLenum errorCode = glGetError();
if (errorCode != GL_NO_ERROR)
{
TRACE("OpenGL Error: 0x%08x, %s\n", errorCode, gluGetString(errorCode));
}