Essayez ceci:
- Appel
glfwWindowHint()
pour définir GLFW_DECORATED
et GLFW_VISIBLE
-false
.
- Appelez
glfwCreateWindow()
. Pour obtenir le handle natif de la fenêtre OpenGL, appelez glfwGetWin32Window()
.
- Appelez
SetParent()
pour définir votre formulaire en tant que nouveau parent de la fenêtre OpenGL.
- Appelez
GetWindowLong()
/SetWindowLong()
pour supprimer le WS_POPUP
et ajouter le style WS_CHILDWINDOW
pour la fenêtre OpenGL.
- Appelez
ShowWindow()
pour enfin rendre la fenêtre OpenGL visible.
J'ai reçu ceci de https://github.com/Chronial/foo_chronflow/blob/master/RenderWindow.h (lignes 29-48).
Vous pouvez également appeler SetWindowPos()
pour ajuster la position de la fenêtre OpenGL dans votre formulaire.
Je vais implémenter votre méthode et vous mettre à jour.Ceci est exactement ce que je cherchais – LittleQuest
Obtenir le message d'erreur "glfwGetWin32Window()" non défini.J'ai essayé d'inclure #include après #include mais pas de chance . Y a-t-il des macros particulières que je dois définir? –
LittleQuest
J'ai inclus #define GLFW_EXPOSE_NATIVE_WGL #define GLFW_EXPOSE_NATIVE_WIN32 et semble ok maintenant – LittleQuest