Выбрать главу

void CBitScrollDlg::OnClose() {

 // TODO: Add your message handler code here and/or call default

 HGLRC hrc;

 KillTimer(1);

 hrc = ::wglGetCurrentContext();

 ::wglMakeCurrent(NULL, NULL);

 if (hrc) ::wglDeleteContext(hrc);

 CDialog::OnClose();

}

и

void CBitScrollDlg::OnDestroy() {

 CDialog::OnDestroy();

 // TODO: Add your message handler code here

 HGLRC hrc;

 KillTimer(1);

 hrc = ::wglGetCurrentContext();

 ::wglMakeCurrent(NULL, NULL);

 if (hrc) ::wglDeleteContext(hrc);

}

Она практически одинаковые. Работают так же как и case WM_CLOSE в Win32API. Т.е. убиваем таймер, получаем контекст рендеринга, если он есть – удаляем его.

Ну вот и все. Еще добавлю, что в проекте есть функция OnSize для обработки изменений размеров окна. В данном случае она не нужна, но если вставлять OpenGL в SDI или MDI, то она вам понадобится.