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

VB.NET Discussion :

GroupBox transparent scintillements


Sujet :

VB.NET

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8
    Points : 2
    Points
    2
    Par défaut GroupBox transparent scintillements
    Bonjour,

    J'ai vu que le problème de scintillement dans les applications VB est un problème récurant. Après pas mal de recherches, je n'arrive pas à trouver une solution efficace à ce problème.

    Tout d'abord, je développe une application en VB2005. Ce phénomène de scintillement est présent dans mes Forms qui contiennent des groupbox avec leur propriété "BackColor" à transparent. Effectivement VB ne gère pas bien la transparence, car cette effet est réalisé par un screenshot de l'arrière plan qui est transmis en image d'arrière plan au control.

    Toutes mes Forms sont habillées par un wallpaper en image de fond, et certaines d'entre elles sont garnies d'une dizaine de groupbox, ce qui donne un effet vraiment désagréable de scintillement.

    Connaissez-vous un moyen pour résoudre ce problème ?

    Merci d'avance.

  2. #2
    Membre du Club Avatar de eikeshi
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    73
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 73
    Points : 61
    Points
    61
    Par défaut
    En effet, pour faire la transparence le Background est copié quand la form est chargée, c'est pour cela que tu ne peux pas superposer de contrôles avec de la transparence.
    D'autres solutions sont possibles pour appliquer le Background.
    Par exemple dans le Paint form ou en utilisant un contrôle image derriere tes contrôles. Tu le mets devant et après tu fais un Sendtoback dans le code chargement.
    Il y a des jours avec, il y a des jours sans et les jours sans, il faut faire avec.

  3. #3
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    à quel moment ça scintille ?
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Merci pour votre intérêt à mon problème.

    Je vais testé la technique avec le sendtoback dès que possible.

    Pour le scintillement, il apparait dès le chargement de la frm (et aussi dans l'interface de développement de ma frm).

  5. #5
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    oui mais est-ce que ca scintille juste à l'ouverture, ou dès que quelque chose se déplace dessus ou autre ?

    y doit y avoir des solutions possibles
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    désolé pour le manque d'activité.
    Actuellement je n'ai toujours pas trouvé de solution à mon problème

    Citation Envoyé par sperot51 Voir le message
    oui mais est-ce que ca scintille juste à l'ouverture, ou dès que quelque chose se déplace dessus ou autre ?
    Ma form scintille à l'ouverture, on voit clairement tous les contrôles qui redessinent leur background en capturant les zones de l'arrière plan. Ensuite plus de scintillement.

    Mais cette effet est vraiment déplaisant, la seule solution que j'ai actuellement c'est de supprimer mon wallpaper de fond de page et de mettre une couleur unie ainsi qu'un backcolor de la même couleur à tous mes contrôles.

  7. #7
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    t'aurais pas perdu de temps en disant ca plus tot

    si c'est juste à l'ouverture, il faut mettre tonform.opacity = 0 avant de faire .show puis le remettre à 1

    le temps d'ouverture reste le meme mais la form s'affiche en une seule fois
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 8
    Points : 2
    Points
    2
    Par défaut
    Merci pour votre réponse !

    Je viens de tester cela et c'est un très bon contournement à mon problème.
    J'ai même essayé de faire varier l'opacité de ma Frm dans un timer, cela donne un très belle effet et au "oubliettes" les scintillement.

    Merci encore pour cette astuce.

Discussions similaires

  1. GroupBox transparent sous VS c++ 2005 express
    Par rothuswarrior dans le forum VC++ .NET
    Réponses: 5
    Dernier message: 26/01/2012, 19h32
  2. Scintillement d'un rectangleshape posé sur un groupbox
    Par yoghisan dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 24/05/2010, 13h24
  3. transparence et scintillement
    Par korriggans dans le forum C#
    Réponses: 1
    Dernier message: 12/11/2007, 09h40
  4. [Debutant]Transparence sur un Label ou GroupBox
    Par ghan77 dans le forum Composants VCL
    Réponses: 1
    Dernier message: 15/12/2005, 16h53
  5. Pb affichage avec un PaintBox (pour eviter scintillement)
    Par juan64 dans le forum C++Builder
    Réponses: 7
    Dernier message: 08/04/2004, 09h21

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