Paindre en boucle

Signaler
Messages postés
495
Date d'inscription
dimanche 6 juillet 2003
Statut
Membre
Dernière intervention
9 novembre 2007
-
Messages postés
495
Date d'inscription
dimanche 6 juillet 2003
Statut
Membre
Dernière intervention
9 novembre 2007
-
salut a tous

voila, je vous expose mon probleme, j'utilise une child window dans une windows normal, et je voudrais paindre le contenu de ma child window en boucle

cette child window sert a afficher le contenu d'un viewport OpenGL

(Visual Studio et pas de MFC, 100% API Win32)

generallement, la methode employer est d'avoir un RegisterClass et un CreateWindow dans le main, puis une boucle sans fin avec tout ce qui faut pour traiter les messages, et la fonction render, le tout coupler biensure par la WindowProc qui se trouve ailleur

donc, je ne peux pas mettre de boucle sans fin dans la WindowProc de ma fenetre mere sinon ca flingue le bon deroulement du programme

je ne peux pas utiliser de thread avec une boucle sans fin dedans car ca fait merder l'affichage de la child window, je sais pas pourquoi

enfin derniere solution, et de loin la plus bourrin, dans la WindowProc de ma child window, j'ai mon message WM_PAINT, et dedans j'appel ma fonction render puis derriere je fait un UpdateWindow(hwnd_de_ma_child_window); mais le probleme c'est que ca repaint en boucle et puis au bout d'un moment ca s'arrete

je ne sais pas du tout comment m'y prendre pour resoudre ce genre de probleme, et si qqun pouvais m'apporter une lumiere, ca serais vraiment tres bien venu =)

merci d'avance a tous

2 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
un thread lance dans WM_CREATE de fenetre mere, tu pourrais ainsi le mettre en pause, le relancer, etc... pas possible ?
Ce n'est qu'une idee, je n'ai jamais fait d'OpenGL.
BruNews, ciao...
Messages postés
495
Date d'inscription
dimanche 6 juillet 2003
Statut
Membre
Dernière intervention
9 novembre 2007
1
bah j'avoue que j'ai fait la methode bourrin, qui consiste a creer un thread sur une fonction, avec _beginthread, et c'est precisement la ou elle se trouve, dans le WM_CREATE dans ma window mere, mais pas terrible, l'affichage merde a mort