cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
6 août 2009 à 12:04
Mayzz
Messages postés2813Date d'inscriptionmardi 15 avril 2003StatutMembreDernière intervention 2 juin 2020
-
7 août 2009 à 09:19
Salut à tou(te)s
J'ai un petit souci avec les PictureBox :
Je charge la PictureBox 1 avec une icone (32x32 en 16 couleurs)
Le format de la PictureBox (maPic.Picture.Type) renvoie bien le type 3 = Icone
Ensuite, je rajoute du texte sur l'image de cette PictureBox
Je recopie l'.Image de la PictureBox 1 vers la .Picture de la PictureBox 2 avec
maPic1.Picture = maPic2.Image
L'affichage est correct, mais lorsque je regarde à nouveau le format de la Picture 2, il est devenu de type 1 = Bitmap (alors que la taille n'a pas changée
Y a t-il une technique simple permettant de faire cette recopie sans perdre le format initial ?
Sinon, je passerai par les API, mais ça me plairait moins (toujours partisan du moindre effort, ce Jack !)
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Mayzz
Messages postés2813Date d'inscriptionmardi 15 avril 2003StatutMembreDernière intervention 2 juin 202028 6 août 2009 à 19:05
maPic1.Picture = maPic2.Image <= ca doit fonctionner via le hdc (en interne) non ?
La copie de l'image n'est pas la copie de la source du PictureBox1 mais la copie de ce qui se trouve dans le contrôle, Image source + text, tout ca recopier points par points d'un picturebox à un autre (fusion de tout ce qui se trouve dans le picturebox, d'ou les deux propriétés image pour le contenu et picture pour la source), donc logique que le format change.
D'ailleur, si je ne me trompe pas, en insérant une icone dans le picturebox, en ajoutant du text et en réenregistrant l'image source le texte ne doit pas être prix en compte.
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 7 août 2009 à 02:02
Au sein du même composant, pas essayé, mais le résultat devrait etre le même.
C'est là qu'est mon problème.
On s'y retrouve avec les APIs, mais c'est un peu plus lourd.
Viva, el BitBlt, GetDIBits, GetDIBits, CreateDIBSection, GetDC et autre OleCreatePictureIndirect
(20 aAPIs pour une simple icône... no comment)
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Mayzz
Messages postés2813Date d'inscriptionmardi 15 avril 2003StatutMembreDernière intervention 2 juin 202028 7 août 2009 à 09:19
En même temps, le traitement des icones (en natif) n'a jamais été le fort de notre cher vb il faut croire, même si un type existe, il ne permet que d'obtenir de très basiques informations. Impossible de reconnaitre les formats interne d'une icône par exemple, bien dommage.
Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.