cs_Batman60
Messages postés71Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention21 octobre 2007
-
2 juin 2006 à 13:52
cs_Batman60
Messages postés71Date d'inscriptionsamedi 21 mai 2005StatutMembreDernière intervention21 octobre 2007
-
2 juin 2006 à 17:23
salut
je cherche comment faire pour redessiner une fenêtre après chargement de fichier jpeg ou bitmap suite à un evénement WM_COMMAND (GetOpenfilename(&ofn)). j'utilise la lib sdl qui charge tout les formats d'images et opengl
pour l'instant la fenêtre se redessine qu'après diminution dans la barre des taches et ensuite réagrandissement.cela doit être le message WM_PAINT je suppose ,si c'est celà comment procéder pour le redessinement après le chargement de l'image" Image.LoadTexture(ofn.lpstrFileTitle,texture);"
j'ai essayé avec updatewindow mais merci d'avance
case WM_COMMAND :
{
switch (LOWORD (wParam)) // --------------------------------------
{
case IDM_OUVRIR_JPEG:
ZeroMemory(&ofn, sizeof(ofn));
ofn.lStructSize = sizeof(ofn);
ofn.hwndOwner = hwnd;
ofn.lpstrFilter = "Fichier Jpeg (*.jpg)";
ofn.nFilterIndex = 1;
ofn.lpstrFile = JPEGNomDocumentLong ;
ofn.nMaxFile = MAX_PATH; // MAX_PATH vaut 260
ofn.lpstrFileTitle = JPEGNomDocumentCourt;
ofn.nMaxFileTitle = sizeof(JPEGNomDocumentCourt);
ofn.lpstrDefExt = "*.jpg";
// si aucun nom de fichier n'a été sélectionné, on abandonne
if(!GetOpenFileName(&ofn))
return false;
lstrcpy( CopieJpeg,ofn.lpstrFile);//JPEGNomDocumentLong
Image.LoadTexture(ofn.lpstrFileTitle,texture);
break;
ensuite dans le case WM_PAINT
void RePaint ()
{
glClear(GL_COLOR_BUFFER_BIT| //efface le frame buffer et le Z-buffer
GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity(); //réinitialise la matrice
gluLookAt(0,0,10,0,0,0,0,1,0);
glTranslatef( -9.0, -8.0, -10.0);