Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : problème couleur bitmap en API [ Windows / GUI ] (raoulman)

samedi 9 décembre 2006 à 00:41:56 | problème couleur bitmap en API

raoulman

Bonjour, J'ai une barre d'outils sur laquelle je veux faire apparaître des images personnalisées. J'ai commencé avec un bouton et une image bitmap, pas de problèmes. Mais maintenant que j'ai plusieurs boutons je charge plusieurs images depuis mon bitmap. J'utilise donc ImageList_LoadImage et j'envoie le message TB_SETIMAGELIST pour afficher toutes mes images. Si j'ai bien toutes mes images ces dernières ont perdu des couleurs entre temps et je n'arrive pas à dire à Windows qu'il me charge toutes les profondeurs de couleurs. Quelqu'un aurait-il une idée à me proposer ? Merci d'avance

samedi 9 décembre 2006 à 10:16:22 | Re : problème couleur bitmap en API

yoyo269

Membre Club
Salut raoulman,

peux-tu mettre les lignes de code que tu as utilisées, c'est-à-dire la création de ton ImageList ?
As-tu essayer de mettre ImageList_AddMasked à la place de ImageList_LoadImage ?

YOYO, @+.

"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"


samedi 9 décembre 2006 à 14:42:32 | Re : problème couleur bitmap en API

raoulman

Salut Voilà la portion de code qui me concerne. Je charge mes ressources à partir d'une dll dont l'instance se nomme charger_dll. J'ai réduit le code à 2 boutons --------------------------- image_boutons_barre_outils = (HBITMAP) LoadImage (charger_dll, MAKEINTRESOURCE (icon1), IMAGE_BITMAP, 32, 32, NULL); TBADDBITMAP tbab; TBBUTTON tbb[2]; INITCOMMONCONTROLSEX (); INITCOMMONCONTROLSEX InitCtrlEx; InitCtrlEx.dwSize = sizeof(INITCOMMONCONTROLSEX); InitCtrlEx.dwICC = ICC_BAR_CLASSES; InitCommonControlsEx(&InitCtrlEx); barre_outils = CreateWindowEx(0, TOOLBARCLASSNAME, NULL, WS_CHILD | WS_VISIBLE | TBSTYLE_FLAT, 0, 0, 0, 0, handle_fenetre_retour, NULL, instance_barre_outils, NULL); tbab.hInst = instance_barre_outils; tbab.nID = (UINT) image_boutons_barre_outils; liste_images_boutons = ImageList_LoadImage (charger_dll, MAKEINTRESOURCE (icon1), 32, 0, CLR_NONE, IMAGE_BITMAP, 0); tbb[0].iBitmap = 0; tbb[0].idCommand = id_relever; tbb[0].fsState = TBSTATE_ENABLED; tbb[0].fsStyle = TBSTYLE_BUTTON; tbb[0].dwData = 0; tbb[0].iString = SendMessage (barre_outils, TB_ADDSTRING, 0, (LPARAM) "Relever"); tbb[1].iBitmap = 1; tbb[1].idCommand = id_sujets; tbb[1].fsState = TBSTATE_ENABLED; tbb[1].fsStyle = TBSTYLE_BUTTON; tbb[1].dwData = 0; tbb[1].iString = SendMessage (barre_outils, TB_ADDSTRING, 0, (LPARAM) "Sujets"); SendMessage (barre_outils, TB_SETIMAGELIST, 0, (LPARAM) liste_images_boutons); SendMessage (barre_outils, TB_ADDBUTTONS, 2, (LPARAM) &tbb); SendMessage (barre_outils, TB_AUTOSIZE, 0, 0);

samedi 9 décembre 2006 à 14:45:10 | Re : problème couleur bitmap en API

yoyo269

Membre Club
Je repose ma 2ème question, as-tu essayer de mettre ImageList_AddMasked à la place de ImageList_LoadImage ?

YOYO, @+.

"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"


samedi 9 décembre 2006 à 15:02:45 | Re : problème couleur bitmap en API

raoulman

Désolé, Oui j'ai essayé et cela n'a rien changé à moins qu'il ne faille mettre un paramètre dont j'ignore l'existence pour crMask

samedi 9 décembre 2006 à 15:07:18 | Re : problème couleur bitmap en API

yoyo269

Membre Club
Oui crMask correspond à la couleur de masque, c'est-à-dire que tous les pixels de ton image ayant la couleur de crMask seront transparents.
Autre chose, tu n'as pas utilisé ImageList_Create ?
En voici un exemple au cas où :
HIMAGELIST hImageList = ImageList_Create(16, 16, ILC_COLOR24 | ILC_MASK, 7, 0);

YOYO, @+.

"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"


samedi 9 décembre 2006 à 15:17:45 | Re : problème couleur bitmap en API

raoulman

En utilisant ImageList_Create et ImageList_AddMasked je n'ai plus d'images. je dois utiliser ImageList_LoadImage

samedi 9 décembre 2006 à 15:24:27 | Re : problème couleur bitmap en API

yoyo269

Membre Club
ok bon courage alors !

YOYO, @+.

"L'intelligence c'est comme un parachute, quand on en n'a pas...on s'écrase !"


samedi 9 décembre 2006 à 15:27:16 | Re : problème couleur bitmap en API
samedi 9 décembre 2006 à 18:00:18 | Re : problème couleur bitmap en API

raoulman

Après quelques recherches j'ai du me résoudre à faire des images en 256 couleurs car certaines fonctions comme LoadImage ne supporte pas les bitmaps 24 bits ou plus. Si quelqu'un a envie de me contredire, qu'il ne se gêne pas, cela m'intéresse, surtout avec un petit code associé


1 2

Cette discussion est classé dans : images, problème, couleur, api, bitmap


Répondre à ce message

Sujets en rapport avec ce message

BITMAP et OPENGL [ par Sebest ] Salut, Voila le petit problème : J'ai récupéré ce programme (http://www.cppfrance.com/article.aspx?Val=740) qui est très pratique, mais j'ai rencontré Problème avec un Bitmap [ par nauss ] Je veux afficher un bitmap en niveau de gris sous visual C++ en MFC.Pour l'instant j'arrive à l'afficher mais en niveau de rouge!!Y doit y avoir une h masquer une couleur dans une bitmap [ par ckoidon ] Salut,je suis débutant, je souhaite masquer une couleur particulière dans une bitmap affichée dans une boite de dialogue.est-ce possible ?si oui comme undefined reference [WIN32] [API] [ par Jeffray ] Bonjour,J'ai un problème de linkage assez bizarre (compilateur : GCC 3.2 : dev-cpp 4.9.8.0).Dans une de mes classes, j'utilise les API DeleteObject, G 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 Format Bitmap [ par Galmiza ] Salut,J'ai crée une surface DirectX (8.1) et j'y pose une bitmap (fait sous paint) d'une profondeur de couleur de 4 bits.Le format de la surface est D OpenGl:Prob de textures PPM [ par Florian29 ] Salut!Voilà j'ai un problème avec les images ppm pour mes programmes openGl. J'ai développé des programme à la fac qui utilisent des textures ppm. Che Changer les couleurs d'une bitmap [ par vecchio56 ] Salut, J'ai une bitmap dans une variable HBITMAP créée avec LoadBitmap et un HDC correpondant. Quelle est la manière la plus rapide de mettre tous les Problème avec GetWindowTextLenght [ par oceax ] Bonjour !!Voilà je suis débutant en c++ et je voudrais me familiariser avec l'utilisation de l'allocation dynamique de la mémoire. Pour mon projet j'a bitmap qui n'apparait plus [ par oceax ] Hello !J'ai un big problème sous VC++,Je crée une boite de dialogue avec une bitmap dedans, je compile tout se passe bien mon image est bien place !!C


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



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
Temps d'éxécution de la page : 0,421 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.