我想在C Builder 中的窗體內渲染OpenGL 幀,但我遵循提供的OpenGL 啟動程式碼時遇到問題。我該如何解決這個問題?
利用 TForm::Handle 作為視窗句柄
解決方案在於使用 TForm::Handle 作為視窗句柄視窗句柄。
示例實現
以下是改編自舊版本C Builder 的示例:
<code class="cpp">int TForm1::ogl_init() { if (ogl_inicialized) return 1; hdc = GetDC(Form1->Handle); // Get device context PIXELFORMATDESCRIPTOR pfd; // Set pixel format for the DC ... // Create current rendering context hrc = wglCreateContext(hdc); if (hrc == NULL) { ShowMessage("Could not initialize OpenGL Rendering context !!!"); ogl_inicialized = 0; return 0; } if (!wglMakeCurrent(hdc, hrc)) { wglDeleteContext(hrc); // Destroy rendering context ogl_inicialized = 0; return 0; } // ... ogl_inicialized = 1; return 1; }</code>
附加說明
以上是如何使用 TForm::Handle 在 C Builder 窗體中渲染 OpenGL 影格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!