PictureBox sur Pocket PC

Résolu
wald39 Messages postés 68 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 23 février 2011 - 11 avril 2006 à 11:19
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.

5 réponses

Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
11 avril 2006 à 13:23
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
);
}
}
3
wald39 Messages postés 68 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 23 février 2011 7
11 avril 2006 à 16:52
merci je v tester sa. je te repon si sa marche bien.
0
wald39 Messages postés 68 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 23 février 2011 7
14 avril 2006 à 14:00
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!
0
Lutinore Messages postés 3246 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 27 octobre 2012 41
14 avril 2006 à 16:44
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".
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
wald39 Messages postés 68 Date d'inscription jeudi 5 janvier 2006 Statut Membre Dernière intervention 23 février 2011 7
14 avril 2006 à 17:53
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.
0
Rejoignez-nous