begin process at 2012 02 10 17:52:33
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Divers

 > 

Bitmap et static


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Bitmap et static

dimanche 23 mai 2004 à 19:15:44 | Bitmap et static

DjGonk


Slt!
J'arriver a mettre une bitmap dans un static mais le probleme c'est que je voudrais que l'image et la taille du static. c a d quelle soit redimansionner a la taille du static.
Comment faire?
Merci
samedi 11 février 2006 à 16:18:13 | Re : Bitmap et static

greg73

Slt

Si je comprends bien tu veux afficher une image (BMP) dans un static.

2 possibilités si tu n'as pas de handle (HBITMAP) sur ton image. utilise la fonction LoadImage qui peut redimensionner toute seul à ta zone d'affichage.

char strFilter[] = "MyType Files (*.bmp)|*.bmp|All Files (*.*)|*.*||";

HRESULT hResult;
CString Path;


//Crée une boite de dialogue d'ouverture de fichier
CFileDialog OpenDlg(TRUE, NULL, NULL, OFN_FILEMUSTEXIST, strFilter);
   
//Ouvre la boite de dialogue
hResult = (int)OpenDlg.DoModal();
   
if( hResult == IDOK ){

    //Récupère le nom du fichier ouvert
    Path = OpenDlg.GetPathName();
   
       
    //Recupére le taille de la fenetre d'affichage pour dimensionner l'image a celle ci
    CRect rectWinAffichage;
    m_ctrImage.GetWindowRect(rectWinAffiche);     //m_ctrImage de type CStatic
   
       
    int iXdesire = rectWinAffichage.Width();
    int iYdesire = rectWinAffichage.Height();
      
       
    //Chargement de l'image dans le handle sur le bitmap
    HBITMAP hBitmap; //Handle sur un bitmap
    HINSTANCE hinst = AfxGetInstanceHandle();
   
    hBitmap = (HBITMAP)LoadImage(hinst, Path, IMAGE_BITMAP, iXdesire,     iYdesire, LR_LOADFROMFILE); //recupere le bitmap depuis un fichier
        
    if( hBitmap == NULL) MessageBox("Erreur lors de l'ouverture du fichier assurez-vous qu'il s'agit bien d'un fichier .BMP",
            "Erreur d'ouverture",MB_ICONERROR | MB_OK);
       

    //Affiche le bitmap ds le control
    m_ctrImage.SetBitmap(hBitmap )




Ou 2ieme methode si tu as deja un handle sur ton image (hBmpSrc) utilise la fonction StretchBlt()


    /*Redimensionner l'image */
   
        // Recupere le DC associé au control d'affichage
        CDC* pcdc = m_ctrImage.GetDC();

        HDC hdcDst = pcdc->GetSafeHdc();

       
        // recupere la taille de la zone d'affichage
        CRect rectWinAffiche;
        m_ctrImage.GetWindowRect(rectWinAffiche);


        //Creer un HDC pour l'image source
        HDC hdcSrc = NULL;
        hdcSrc = CreateCompatibleDC(hdcDst);
        SelectObject(hdcSrc,hBmpSrc);         
       
       
        //Redimensionne et affiche l'image
        StretchBlt(hdcDst, 0, 0, rectWinAffiche.Width(), rectWinAffiche.Height(), hdcSrc, 0, 0, /*image.nbColonnes*/, /*image.nbLignes*/, SRCCOPY);
       


Cette discussion est classée dans : taille, static, bitmap


Répondre à ce message

Sujets en rapport avec ce message

Taille Static [ par DjGonk ] Urgent:Je cherche a savoir si il est possible de recuperer la taille d'un controle CStatic? Width et heigh?Merci d'avance Affichage bitmap [ par PascalBernard57 ] Bonjour J'ai un probleme !! (s'il n'y en avait qu'un !) Je travaille avec BCB6 de grande images que je veux visualiser dans des TImage + Canvas + .. adapter l'image à la taille du bouton [ par ndubien ] Bonjour,Je cherche à mettre une image sur un bouton qui s'adapte automatiquement dés que la taille du bouton change.Tout d'abord cette opération est-e Probleme de taille d'une liste chainee static qui varie ... [ par rick_moins_moins ] Bonjour,j'ai besoin de faire  une liste chainee dans mon programme afin de cataloguer tous les objets de mon projet. Pour cela ma liste chainee est st Bitmap [ par zainal ] Salut a vousbon voila, je voudrai afficher une bitmap dans une zone de static et j ai creer ce bout de code qui ne marche pas vous vous en douter !voi bitmap et static en mfc [ par xXTomTomXx ] je veux mettre un bitmap dans un static.Mon prog est en mfc et n'est pas basé sur une boite de dialogue.J'ai besoin d'aide.Merci d'avance. image bitmap et static [ par batrasog ] voilà , je voulais affichier une image bitmap qui est dans une ressource , j'ai cherché un peu partout mais il me manque encore un argument pour SendM Couleur de fond d'un control STATIC [ par raidentr ] Salut,J'ai créé dans VC++ 6 un control STATIC de la facon suivante :HWND hwnd;hwnd_lbl = CreateWindowEx(0, "STATIC", "Mon Texte", WS_VISIBLE|WS_CHILD, Superposition d image avec allegro [ par guilt92 ] Bonjour,je voudrais savoir si il est possible lorsque l'on programme avec Allegro de "supersposer" des bitmaps, c'est a dire en fait que je voudrais p SetClipboardData + CF_BITMAP [ par vecchio56 ] J'essaye de mettre un bitmap dans la clipboard, mais vu que je ne sais pas trop comment ca marche les bitmap, je galère un peu. Voila ou j'en suis:HBI


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,296 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales