Accueil > > > UNE CLASSE BOUTON BITMAP POUR C++/MFC (TRÈS SIMPLE À UTILISER)
UNE CLASSE BOUTON BITMAP POUR C++/MFC (TRÈS SIMPLE À UTILISER)
Information sur la source
Description
Personnaliser simplement les boutons en c++. Une fois la classe intégré à votre projet, vous pourrez gérer la couleur du libellé, l'image et son étendu sur le bouton, un vrai texte à coté de l'image, le grisé, l'effet mouseMove et le redimentionnement automatique de l'image selon la taille du bouton. Sans oublier le masque pour la transparence. Un exemple complet et commenté, avec tous les cas de figure dans le zip.
Source
- // Utilisation
- // declare
- CBtnBitmap* m_pBtn;
- // alloue
- m_pBtn = new CBtnBitmap(IDB_NORMAL, _T("texte !"), RGB(0,0,255));
- // par défaut le taux de remplissage est un tier, on peut le changer
- m_pBtn->SetTauxRemplissageImg(REMPLIR_MOITIE)
- // On peut gérer le grisé ou non
- m_pBtn->SetIDBitmapGris(IDB_GRISE);
- // On peut gérer le mouseMove ou non
- m_pBtn->SetIDBitmapMouseMove(IDB_MOUSEMOVE);
- // On peut gérer le masque de transparence
- m_pBtn->SetIDBitmapMasque(IDB_MASQUE);
- // On peut gérer le redimentionnement automatique
- m_pBtn->SetStretch(true);
- // On peut changer la couleur à l'exécution
- m_pBtn->SetCouleurTexte(RGB(255,0,0));
- // pour texte et pour grisé à l'exécution (fn windows)
- m_pBtn->SetWindowText((LPCTSTR));
- m_pBtn->EnableWindow(FALSE);
-
- // dans l'init du dialog parent ou le template est posé
- // il faut sousclasser le bouton
- m_pBtn->SubClassDlgItem(IDC_BTN, this);
-
- // Ne pas oublier de désallouer le btn (delete)
// Utilisation
// declare
CBtnBitmap* m_pBtn;
// alloue
m_pBtn = new CBtnBitmap(IDB_NORMAL, _T("texte !"), RGB(0,0,255));
// par défaut le taux de remplissage est un tier, on peut le changer
m_pBtn->SetTauxRemplissageImg(REMPLIR_MOITIE)
// On peut gérer le grisé ou non
m_pBtn->SetIDBitmapGris(IDB_GRISE);
// On peut gérer le mouseMove ou non
m_pBtn->SetIDBitmapMouseMove(IDB_MOUSEMOVE);
// On peut gérer le masque de transparence
m_pBtn->SetIDBitmapMasque(IDB_MASQUE);
// On peut gérer le redimentionnement automatique
m_pBtn->SetStretch(true);
// On peut changer la couleur à l'exécution
m_pBtn->SetCouleurTexte(RGB(255,0,0));
// pour texte et pour grisé à l'exécution (fn windows)
m_pBtn->SetWindowText((LPCTSTR));
m_pBtn->EnableWindow(FALSE);
// dans l'init du dialog parent ou le template est posé
// il faut sousclasser le bouton
m_pBtn->SubClassDlgItem(IDC_BTN, this);
// Ne pas oublier de désallouer le btn (delete)
Conclusion
Pour les débutants qui viennent du VisualBasic, cette classe fera retrouver la simplicité que l'on doit avoir pour agrémenter un gui sans passer par la reflection ou les messages obscurs comme MEASUREITEM, DRAWITEM, ERASEBKG ect...
Historique
- 06 août 2006 15:31:16 :
- Suite au commentaire, Ajout de l'exe (.ex_) pour ceux qui ne peuvent pas compiler.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Mettre une bitmap sur un bouton (MFC,VC++) [ par JMGR ]
Comment peut - on mettre une image sur un bouton ?Mon code qui ne fonctionne pas :HBITMAP bimp= LoadBitmap(NULL,"bitmaps\\un.bmp");m_x0y0.SetBitmap(bi
Boite de dialogue MFC [ par julok2 ]
Salut,j'écris actuellement un programme dans lequel j'ouvre des boites de dialogue. J'ai donc créé des fonctions OnBouton dans une autre classe où j'u
Pb avec CBitmapButton [ par punx120 ]
Salutj'ai un problème avec CBitmapButton, je veux créer un bouton avec un bitmap je fais comme ceci mais ça ne marhce pas (j'ai visual c++ 6.0): dans
Utiliser la classe MFC CHtmlEditCtrl [ par appstmd ]
Salut !Quelqu'un sait-il comment on fait pour spécifier le contenu d'un contrôle CHtmlEditCtrl sans passer par une adresse Internet ou un fichier HTML
Imprimer un bitmap sans MFC ( API Win32 ) [ par bebel6 ]
Bonjour à tous tout d'abord !Alors voila le bin'z :J'aimerais pouvoir imprimer une image avec vsiualc 6 sans l'aide des MFC, j'arrive deja à imprimer
Insérer bitmap dans un bouton dans une boite de dialogue [ par safira ]
safira:)Salut! Je suis nouvelle dans ce forum! J'aimerais savoir comment mettre un bitmap dans bouton qui se trouve dans une boite de dialogue avec MF
controle du volume audio général [ par roxanic ]
BonjourJe cherche a controler les bouton de volume.Pour le bouton Wave c'est OK. Mais je ne trouve pas le solution pour le curseur du volume général.M
MFC : bitmap [ par lavionneur ]
Bonjour a tous , je suis nouveau sur ce forum.je suis en projet de fin d'année et je voudrais savoir comment on fait pour :rendre visible ou invisible
MFC mettre un controle invisible [ par Cameleon69 ]
J'ai un controle ComboBox, que je veux rendre invisible, je sais le rendre inactif mais invisible ???Merci de votre aide.
État d'un bouton MFC [ par NiFF ]
Bonjour tout le monde.Comment fait-on pour changer l'état d'un bouton? J'ai créé sur ma feuille MFC un bouton avec la propriété "Disabled". Comment fa
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Forum
MATRICE TEMPLATEMATRICE TEMPLATE par hjr2610
Cliquez pour lire la suite par hjr2610 RE : SAC A DOS RE : SAC A DOS par hadjkaddour
Cliquez pour lire la suite par hadjkaddour
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|