Erstellen eines Renderingkontexts und Aktuelles
Im folgenden Codebeispiel wird gezeigt, wie Sie einen OpenGL-Renderingkontext als Reaktion auf eine WM_CREATE Nachricht erstellen. Beachten Sie, dass Sie das Pixelformat vor dem Erstellen des Renderingkontexts einrichten. Beachten Sie auch, dass in diesem Szenario der Gerätekontext nicht lokal freigegeben wird. Sie lassen es los, wenn das Fenster geschlossen wird, nachdem der Renderingkontext nicht aktuell ist. Weitere Informationen finden Sie unter Löschen eines Renderingkontexts. Beachten Sie schließlich, dass Sie lokale Variablen für die Gerätekontext- und Renderingkontexthandles verwenden können, da Sie mit den Funktionen wglGetCurrentContext und wglGetCurrentDC nach Bedarf Handles für diese Kontexte abrufen können.
// a window has been created, but is not yet visible
case WM_CREATE:
{
// local variables
HDC hdc ;
HGLRC hglrc ;
// obtain a device context for the window
hdc = GetDC(hWnd);
// set an appropriate pixel format
myPixelFormatSetupFunction(hdc);
// if we can create a rendering context ...
if (hglrc = wglCreateContext( hdc ) ) {
// try to make it the thread's current rendering context
bHaveCurrentRC = wglMakeCurrent(hdc, hglrc) ;
}
// perform miscellaneous other WM_CREATE chores ...
}
break;