[VC++] chargement d'une nouvelle bitmap

chargement d'une nouvelle bitmap [VC++] - Programmation

Marsh Posté le 23-02-2002 à 15:22:23    

hello, ça fait meme pas uen semaine que j'affiche des images dans un programme et je necomprend pas tout  :sarcastic:  
 
j'ai un objet bitmap dans ma fenetre et je veux cahnger l'image associé a celui ci .. mais je n'y arrive pas.
IDC_BUTTON1 c'est l'idnetifiant de mon image
 
et IDB_BITMAP3 l'identifiant de l'image que je veux charger.
 
CBitmap *toto = (CBitmap*)GetDlgItem(IDC_BUTTON1);
toto->DeleteObject();
toto->LoadBitmap(IDB_BITMAP3);
 
 
comment que je dois faire ? ;(

Reply

Marsh Posté le 23-02-2002 à 15:22:23   

Reply

Marsh Posté le 23-02-2002 à 16:21:21    

:bounce:

Reply

Marsh Posté le 23-02-2002 à 16:32:15    

Contexte ???
En français, ça donne quoi ???
 
Une CBitmap est faite pour etre affiché dans un CDC et GetDlgItem rend un CWnd donc je ne vois pas trop le rapport.
 
Au fait, il y a une classe CBitmapButton pour faire un bouton avec des bitmaps dessus donc si ça dont tu as besoin...


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
Reply

Marsh Posté le 23-02-2002 à 16:35:55    

bon voila ce que je souhaite faire :
 
afficher un image (inclue dans mes ressources)
et pouvoir changer cette image (cad passer d'une resource bitamp a une autre) ..  
 
je veux effectivement faire un bouton mais qui tourne .. :)
 
ce que je n'arrive pas a faire c'est charger une image "dynamiquement" ..  
 
merci :)

Reply

Marsh Posté le 23-02-2002 à 17:05:43    

bon j suis arrivé ..
dites moi si il y a moyens de faire plus simple :)
 
GetDlgItem(IDC_RECT2)->GetWindowRect(test_rect);
 ScreenToClient(test_rect);
  CClientDC dc(this);
 BITMAP bitmapbits;
 test_cdc.CreateCompatibleDC(&dc);
 test_bitmap.Attach(::LoadImage(::AfxGetInstanceHandle(),MAKEINTRESOUR
CE(IDB_BITMAP1), IMAGE_BITMAP,0,0,LR_LOADMAP3DCOLORS));
   
 test_bitmap.GetBitmap(&bitmapbits);
 int cy=bitmapbits.bmHeight;
 int cx=bitmapbits.bmWidth;
 
 GetDlgItem(IDC_RECT2)->SetWindowPos(  NULL, 10,0, cx,cy,SWP_NOMOVE   |SWP_NOOWNERZORDER   );  
    test_cdc.SelectObject(&test_bitmap);
 
 dc.BitBlt(test_rect.left,test_rect.top,50,50,&tes
t_cdc,0,0,SRCCOPY);

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed