IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

Adapter image a la taille d'un bouton


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 67
    Par défaut Adapter image a la taille d'un bouton
    Bonjour a tous,

    Voila j'ai inserer une image dans un bouton grace au petit bout de code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    HBITMAP hBmp = LoadAnImage( _T("res\\setting.gif") );
    HWND hBouton = ::GetDlgItem(this->m_hWnd,IDC_BAdvSettings);
    ::SendMessage(hBouton, BM_SETIMAGE, (WPARAM)IMAGE_BITMAP, (LPARAM)(HANDLE)hBmp );
    L'image etant trop grande par rapport au bouton, je voudrais savoir comment faire pour adapter la taille de mon image a celle du bouton.

    Par avance merci,
    Greg.

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Bonjour,
    Pour adapter la taille de ton bouton à celle de l'image, tu as CBitmapButton::SizeToContent.
    Pour l'inverse, je ne connais pas de méthode. Je dirais :
    Méthode 1: charge ton bitmap. Travaille avec des DC mémoire & StretchBlt pour construire un nouveau bitmap à la bonne taille (ou avec CImage ? )
    Méthode 2 : BS_OWNERDRAW sur ton bouton et traitement de WM_MEASUREITEM et WM_DRAWITEM pour le dessiner dans ta classe dialog.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 67
    Par défaut
    Resolu ...

    1) Charge l'image dans un HBITMAP :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    hbitmap1 = (HBITMAP) LoadImage (NULL,"res\\setting3.bmp", IMAGE_BITMAP, cx/100)*10,cy-(cy/100)*92,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
    2) L'applique sur le bouton avec la methode SetBitmap :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    m_AdvSettings.SetBitmap(hbitmap1);

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/03/2014, 21h10
  2. Adapter image à la taille du bouton de commande
    Par allergique dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 28/12/2009, 21h42
  3. Adapter la form à la taille d'une image
    Par escape dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 06/12/2006, 15h44
  4. [HTML?][XHTML?][CSS?] Une image dont la taille s'adapte
    Par zelda dans le forum Mise en page CSS
    Réponses: 3
    Dernier message: 11/11/2005, 10h19
  5. Réponses: 20
    Dernier message: 19/12/2004, 18h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo