Maison >développement back-end >C++ >Comment restituer un cadre OpenGL dans un formulaire C Builder à l'aide de TForm :: Handle ?
Je souhaite restituer un cadre OpenGL dans un formulaire dans C Builder, mais je suis rencontrer des problèmes lors du suivi du code de démarrage OpenGL fourni. Comment puis-je résoudre ce problème ?
Utiliser TForm::Handle comme handle de fenêtre
La solution réside dans l'utilisation de TForm::Handle comme handle de fenêtre. handle de fenêtre.
Exemple d'implémentation
Voici un exemple adapté d'une ancienne version de 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>
Notes supplémentaires
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!