次のコード サンプルは、WM_CREATE メッセージに応答して OpenGL レンダリング コンテキストを作成する方法を示しています。 レンダリング コンテキストを作成する前にピクセル形式を設定していることに注意してください。 このシナリオでは、デバイス コンテキストがローカルで解放されないことに注意してください。ウィンドウが閉じられる際、レンダリング コンテキストを非アクティブにした後で、デバイス コンテキストを解放します。 詳細については、「レンダリング コンテキストの削除」を参照してください。 最後に、wglGetCurrentContext と wglGetCurrentDC 関数を使用すると、必要に応じてこれらのコンテキストへのハンドルを取得できるため、デバイス コンテキストとレンダリング コンテキスト ハンドルにローカル変数を使用できることに注意してください。
// 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;