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 :

[VB.NET] Transparence d'un PictureBox [FAQ]


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut [VB.NET] Transparence d'un PictureBox
    Salut
    Je veux mette ce point dans un pictureBox ...
    le probleme c'est que c'est un .gif et que normalement ce qui depasse le point rouge est transparent mais sur ma carte (forms) il est tout blanc...
    Une solution...?

  2. #2
    Membre confirmé Avatar de Mecano14
    Inscrit en
    Juin 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Juin 2004
    Messages : 71
    Par défaut
    Exactement le meme problème en C#.

    Merci à notre sauveur

  3. #3
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Alors pour les deux, supposer que j'ai un PictureBox PBGifTransparent dont la propriété Image contient PointRouge.gif
    Dans le constructeur de la Form concerné, après InitializeComponent

    Pour zitoun
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Public Sub New()
       InitializeComponent()
     
       Dim bmp As Bitmap = CType(Me.PBGifTransparent.Image, Bitmap)
       bmp.MakeTransparent(bmp.GetPixel(0, 0))
    End Sub
    Pour Mecano14
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public MyForm()
    {
       InitializeComponent();
     
       Bitmap bmp = ((Bitmap)(this.PBGifTransparent.Image));
       bmp.MakeTransparent(bmp.GetPixel(0, 0));
    }
    Bonne année en tous cas pour moi çà fonctionne

  4. #4
    Membre confirmé Avatar de Mecano14
    Inscrit en
    Juin 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Juin 2004
    Messages : 71
    Par défaut
    En fait ce que je veux faire, c'est afficher une image par dessus une autre (superposer deux picturebox)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Bitmap bmp = new Bitmap("Grapes.gif");
    bmp.MakeTransparent(bmp.GetPixel(1, 1));
    pictureBox1.Image = bmp;
    En onsiderant que pictureBox1 est par dessus pictureBox2

    j'ai bien mis la couleur de fond de pictureBox1 en "Transparent" mais j'ai toujours le fond.

    C'est possible d'afficher juste la bitmap sur la form sans passer par une pictureBox ?


    Je ne peux pas utiliser le constructeur parce que l'image s'affiche sur evenemnt de l'utilisateur.

    édité par neguib pour

  5. #5
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Citation Envoyé par Mecano14
    j'ai bien mis la couleur de fond de pictureBox1 en "Transparent" mais j'ai toujours le fond.
    Ben oui c'est normal, si vous voulez faire un système de calques, il faut absolument que votre PictureBox2 soit contenu (et non au dessus) de PictureBox1, cette fois la transparence fonctionnera
    Ceci peut être directement fait à la main dans la méthode InitializeComponent
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    this.PictureBox1.Controls.AddRange(new Control[]{this.PictureBox2};
    //...
    this.Controls.AddRange(new Control[]{..., this.PictureBox1, //.....};
    //...

  6. #6
    Membre confirmé Avatar de Mecano14
    Inscrit en
    Juin 2004
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Juin 2004
    Messages : 71
    Par défaut
    Ca marche très bien en C#

    Merci et bonne année !

  7. #7
    Membre confirmé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut
    Merci ça marche parfaitement...

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Par défaut
    Bonjour, je sais que j'arrive un peut tard mais je ne suis pas sur de comprendre ou il faut mettre ce code (en vb). Je débute en dotNET et je suis un peut perdu.

  9. #9
    Membre confirmé
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2004
    Messages
    145
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2004
    Messages : 145
    Par défaut
    Citation Envoyé par Torkan
    Bonjour, je sais que j'arrive un peut tard mais je ne suis pas sur de comprendre ou il faut mettre ce code (en vb). Je débute en dotNET et je suis un peut perdu.
    N'importe ou avant de faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.Controls.Add(Me.MyPictureBox)

  10. #10
    Expert confirmé
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    Détails du profil
    Informations personnelles :
    Âge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par défaut
    Citation Envoyé par Torkan
    Bonjour, je sais que j'arrive un peut tard mais je ne suis pas sur de comprendre ou il faut mettre ce code (en vb). Je débute en dotNET et je suis un peut perdu.
    Commences par nous dire de quel code tu parles, 2 au moins ont été proposés
    De plus quel mot, phrase, expression tu ne comprends pas :

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 47
    Par défaut
    C'est beau, sa fonctionne ... merci

    PS il y avais qu'un seul code en vb

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

Discussions similaires

  1. Transparence entre 2 PictureBox
    Par Julien_C++ dans le forum Visual C++
    Réponses: 1
    Dernier message: 04/07/2007, 15h01
  2. [VB.NET 2005] Click dans pictureBox dans tablelayoutpanel
    Par meuble2001 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/04/2007, 15h45
  3. [VB.Net] Probleme sur un picturebox
    Par tomnie dans le forum Windows Forms
    Réponses: 2
    Dernier message: 13/11/2006, 11h20
  4. [VB.Net/C#]Comment maintenir PictureBox en arrière plan?
    Par zitoun dans le forum Windows Forms
    Réponses: 2
    Dernier message: 05/01/2006, 17h11
  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