Je repond un peu en retard ;) mais bon Avec la méthode paintpicture, pour faire des effets transparents, il faut que tu te serve du dernier parametre de paintpicture.
Je pense par exemple que si tu as un rond, tu voudrais copier seulement le rond, et pas le carré blanc qui l'entoure, c'est ça?
donc pour ça, il faut que tu prenne ton image principal, le rond par exemple, et que tu mette en noir tout ce qui doit etre invisible, et tu ne touches pas le reste de l'image. On appelera cette image l'image1 Ensuite, tu copie l'image, et là tout ce qui doit être invisble, tu le met en blanc, et tout ce qui doit etre visible tu le met en noir. Ce sera l'image2
Ensuite, dans VB tu declare : Const SRCPAINT = &HEE0086 ' (DWORD) dest = source OR dest Const SRCAND = &H8800C6 ' (DWORD) dest = source AND dest
dans picture1, tu vas mettre l'image1 dans picture2, tu vas mettre l'image2 et un picture3 auquel tu met une image de fond (si tu veux en mettre une) et tu fais ensuite picture3.paintpicture picture2,X,Y,,,,,,SRCAND picture3.paintpicture picture1,X,Y,,,,,,SRCPAINT
et tu obtiendras un rond (dans l'exemple), comme ça, tu n'es pas obligé de faire des formes carrés. Si tu n'y arrive pas, mail moi à Johjo@free.fr, je t'expliquerai mieux en detail
------------------------------- Réponse au message : -------------------------------
salut a tous
voila, j'ai eu vu des bouts de code utilisant un api du style bitblt, mais je ne sais pas comment l'utilser. en fait ce que je voudrai faire c pareil qu'avec la fonction paintpicture, mais avec une couleur transparente.
Donc ma question c'est comment (si possible simplement) faire un paintpicture avec une couleur transparente ?
Merci beaucoup à tous pour vos réponses Stéphane
|