IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

rendre l'arriere plan d'une picturebox invisible


Sujet :

Windows Forms

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2005
    Messages
    700
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2005
    Messages : 700
    Points : 488
    Points
    488
    Par défaut rendre l'arriere plan d'une picturebox invisible
    Bonjour à tous.

    Je viens de passer toute ma matinée à rechercher une solution pour rendre la couleur de fond d'une image transparente, et que cela fonctionne meme si le background de la Form est une image.

    J'ai trouvé plein de solutions, toutes complexes, pour enfin tomber sur LA solution simple et efficace.

    Prerequis : rien, vous pouvez utiliser une image avec le format de pixel qui vous plait (8,16,24,32bits). En contre partie, votre couleur de fond doit etre exclusive : cad que si votre fond est blanc, il ne doit y avoir aucun pixel blanc dans le contenu à afficher, autrement il sera egallement transparent. Je conseille donc de peindre votre arriere plan avec une couleur horrible, Vert Flashy par exemple

    voici la methode:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public WaitForm()
            {
     
                Bitmap bmp = new Bitmap(MonImage);
                pictureBox1.BackColor = Color.Transparent;
                bmp.MakeTransparent(bmp.GetPixel(1, 1)); //On supose ici que le premier pixel en haut à gauche de votre image fait parti du background, à vous d'adapter les coordonnées si besoin est.
                pictureBox1.Image = bmp;
     
     
            }
    Simple non?

    quelques keywords pour les recherches : image transparente background gdi c# csharp bitmap

  2. #2
    Rédacteur
    Avatar de Louis-Guillaume Morand
    Homme Profil pro
    Cloud Architect
    Inscrit en
    Mars 2003
    Messages
    10 839
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Cloud Architect
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 10 839
    Points : 28 252
    Points
    28 252
    Par défaut
    euh, et l'utilisation de TransparencyKey?
    moi c'est Louis-Guillaume, ni Louis, ni Guillaume mais Louis-Guillaume et je n'aide pas ceux qui écorchent mon nom

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/05/2008, 12h11
  2. Étaler une image sur l'arriere plan d'une page web
    Par Mo_Poly dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 01/05/2008, 23h41
  3. Mettre un composant en arrière plan sur une fiche MDI
    Par ALEX77 dans le forum Composants VCL
    Réponses: 21
    Dernier message: 15/10/2007, 21h06
  4. image comme arrière-plan dans une fenetre?
    Par afrikha dans le forum GTK+ avec C & C++
    Réponses: 6
    Dernier message: 08/10/2005, 20h22
  5. Rendre le fond transparent dans une picturebox
    Par fun31 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 20/01/2005, 18h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo