PictureBox sur Pocket PC [Résolu]

Messages postés
68
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
23 février 2011
- - Dernière réponse : wald39
Messages postés
68
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
23 février 2011
- 14 avril 2006 à 17:53
Bjr à tous.
J'aimerais afficher une image ronde avec les tours transparents dans une picturebox, je pense qu'il faut redessiner l'image sur la picturebox pour obtenir la transparence dans le compact framework car la propriété backcolor ne gère pas la transparence, j'aimerais savoir comment on fait cela ?
Merci d'avance.
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
28
3
Merci
Salut, dessine directement sur la forme, ou redéfinit la méthode OnPaint de ta PictureBox :

public class MyPictureBox : PictureBox
{
private Color colorKey;


public Color ColorKey
{
get { return colorKey; }
set { colorKey = value; }
}

// Pour être complet faudrait aussi gérer la propriété SizeMode ect..
protected override void OnPaint( PaintEventArgs e )
{
//base.OnPaint( e );


ImageAttributes attributes = new ImageAttributes( );
attributes.SetColorKey( colorKey, colorKey );


e.Graphics.DrawImage
(
this.Image,
this.ClientRectangle,
0,
0,
this.Image.Width,
this.Image.Height,
GraphicsUnit.Pixel,
attributes
);
}
}

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 134 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Lutinore
Messages postés
68
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
23 février 2011
0
Merci
merci je v tester sa. je te repon si sa marche bien.
Commenter la réponse de wald39
Messages postés
68
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
23 février 2011
0
Merci
Ceci marche en effet !

Mais un petit pb, pour certaines images ya pas de pb les contours
prennent bien la couleur du fond, mais pour d'autres il y a un pb la
couleur majoritaire de l'image est aussi modifiée par celle du fond.


Si tu as une solution je ten remercie d'avance!
Commenter la réponse de wald39
Messages postés
3248
Date d'inscription
lundi 25 avril 2005
Statut
Modérateur
Dernière intervention
27 octobre 2012
28
0
Merci
je comprends pas !?

Tu utilises bien un *.bmp ( voir *.png ) mais pas des *.jpg car dû à la compression jpg le fond ne sera pas uni et donc la transparence ne sera pas correct.

Tu dois également choisir une couleur de fond unique c-à-d que cette couleur ne doit pas être utilisée ailleurs dans l'image, ça c'est une règle immuable, la ColorKey doit être unique, ça ne vient pas de la méthode que je t'ai donné, c'est comme ça.. En général on utilise la couleur "Lime" ou "Magenta".
Commenter la réponse de Lutinore
Messages postés
68
Date d'inscription
jeudi 5 janvier 2006
Statut
Membre
Dernière intervention
23 février 2011
0
Merci
et ben j'ai un fond rouge et une image dans une picturebox ronde avec l'interieur noir, le pb et ke le noir de ma touche pren la couleur rouge du fond donc je ne voi presque plus ma touche car on la distingue encore car el et en dégrader de noir jusko gris et le gris reste visible il net pa remplacer.
Commenter la réponse de wald39