Transparence et panel

Résolu
Supopste
Messages postés
69
Date d'inscription
dimanche 30 octobre 2005
Statut
Membre
Dernière intervention
6 mars 2008
- 22 août 2006 à 13:42
sebmafate
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
- 22 août 2006 à 14:37
Bonjour,
est-il possible de régler la transparence d'un panel?
Merci d'avance

8 réponses

Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
22 août 2006 à 13:56
Salut,

La transparence ou l'opacité comme avec les formes !?

// transparence totale
public class MyPanel : Panel
{
    public MyPanel( ) : base( )
    {
        this.SetStyle
        (
            ControlStyles.UserPaint |
            ControlStyles.SupportsTransparentBackColor,
            true
        );


        this.BackColor = Color.Transparent;
    }
}
3
sebmafate
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
22 août 2006 à 14:22
à tester... c'est mis en commentaire de ma source :

public class MyPanel : Panel
{
    public MyPanel( ) : base( )
    {
        this.SetStyle
        (
            ControlStyles.UserPaint |
            ControlStyles.SupportsTransparentBackColor,
            true
        );         this.BackColor = Color.FromArgb(128,128,128,128);
    }
}

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
3
Supopste
Messages postés
69
Date d'inscription
dimanche 30 octobre 2005
Statut
Membre
Dernière intervention
6 mars 2008

22 août 2006 à 14:02
Bonjour,
merci pour la réponse, en fait c'est l'opacity plutôt que je cherche...
Y a t il qqchose de similaire?
0
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
22 août 2006 à 14:18
Non je ne pense pas, l'opacité est basé sur le style WS_EX_LAYERED qui est valable uniquement pour les fenêtres pas pour les contrôles.

Mais il existe quelques astuces je crois bien..

http://www.csharpfr.com/codes/PANEL-TRANSPARENT_33676.aspx
0

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

Posez votre question
Supopste
Messages postés
69
Date d'inscription
dimanche 30 octobre 2005
Statut
Membre
Dernière intervention
6 mars 2008

22 août 2006 à 14:28
Ok, merci beaucoup, finalement je vais utiliser ta première réponse en utilisant un borderStyle classique, ça me suffira pour ce que je fais, je testerais la seconde réponse,
encore merci
0
Supopste
Messages postés
69
Date d'inscription
dimanche 30 octobre 2005
Statut
Membre
Dernière intervention
6 mars 2008

22 août 2006 à 14:32
Comme c'était rapide de tester, ça a l'air de bien marcher la seconde solution, donc merci à vous sebmafate et Lutinore (j'ai cru en répondant précédemment que j'avais le même interlocuteur désolé :) )
Bonne journee
0
Lutinore
Messages postés
3246
Date d'inscription
lundi 25 avril 2005
Statut
Membre
Dernière intervention
27 octobre 2012
42
22 août 2006 à 14:33
Oui j'ai vu mais si j'ai bien compris ta source fait de la vraie transparence, on voit un control si il est place en dessous, ce qui ne semble pas être le cas là ?

Par contre avec une valeur alpha on se retrouve avec les contrôles enfants du panel eux aussi transparents, je sais pas si c'est possible avec ta source ?
0
sebmafate
Messages postés
4936
Date d'inscription
lundi 17 février 2003
Statut
Membre
Dernière intervention
14 février 2014
38
22 août 2006 à 14:37
Lutinore, en fait, ma source fait la même chose que la réponse que j'ai donné plus... car, je peints le fond du panel avec une couleur ayant une composant alpha < 255... par contre, comme tu le précises ici, ma solution n'a pas d'effet de bord... les composants que l'on dépose ne deviennent pas transparent.

Sébastien FERRAND (
blog)
Consultant Indépendant
[Microsoft MVP Visual C#]
0