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] probleme d'affichage


Sujet :

Windows Forms

  1. #1
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut [vb.net] probleme d'affichage
    Bonjour,
    J'ai un control tab assez avancé, dont je peux changer l'ordre des tabpages comme je l'entends. Chaque tabpage contient entre autres une textbox et une datagrid. Lorsque je swap deux tabpages, ca fonctionne bien mais l'affichage est heu.... je ne trouve pas le mot, disons qu'il y a du flickering pendant une fraction de seconde. Comment empecher l'affichage pendant le temps de l'opération (qui est minime bien entendu) ?

    merci

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    t'as essayé un RemoveHandler et AddHandler du Paint :
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  3. #3
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut
    du tab control ou des tabpages ? Je ne suis pas sur comment faire ca, je vais essayer..

    apres removehandler myTabCtrl.Paint(tabfieldtabs, new PaintEventArgs), quel est le delegate associé ?

  4. #4
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut

    Bon j'ai utilisé MytabCtrl.Visible = false et true et ça marche impec', comme quoi parfois ca ne sert a rien de se compliquer... lol

    Par contre une réponse ma question d'avant m'interesse vraiment, alors je ne clique pas résolu tant que j'ai pas la réponse

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut Re: [vb.net] probleme d'affichage
    Citation Envoyé par graphicsxp
    Comment empecher l'affichage pendant le temps de l'opération (qui est minime bien entendu) ?
    ok alors je te suggère de le rendre visible qu'après l'opération
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  6. #6
    Membre actif
    Homme Profil pro
    Création de jeux video (en amateur)
    Inscrit en
    Mars 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Création de jeux video (en amateur)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 408
    Points : 260
    Points
    260
    Par défaut
    Je ne connais pas le sens exact du mot flickering, mais j'ai entendu dire qu'avec Visual studio 2005, les contrôles seraient double bufferisé. Peut-etre que ton problème n'aura pas lieu sous framework 2.0
    ZTAB (Ze Text Adventure Builder)

    Logiciel très intuitif et ergonomique de création de jeux d'aventure et de livres dont vous êtes le héros.

    http://sites.google.com/site/ztabsoft/

  7. #7
    Rédacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Points : 6 017
    Points
    6 017
    Par défaut
    Citation Envoyé par Harry_polin
    Je ne connais pas le sens exact du mot flickering, mais j'ai entendu dire qu'avec Visual studio 2005, les contrôles seraient double bufferisé. Peut-etre que ton problème n'aura pas lieu sous framework 2.0
    Certain controle sont déja double buffered sous .NET 1.1 .

    Sinon la solution de neguib est bien . Je ne vois pas d'autre chose à faire sinon peut etre passer ta form et ?ton tab page? en double buffered .
    - MVP C#
    -Tout problème a une solution, le vrai problème est de trouver la solution .....
    - Linux & mono : l'avenir

  8. #8
    Membre actif
    Homme Profil pro
    Création de jeux video (en amateur)
    Inscrit en
    Mars 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Création de jeux video (en amateur)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 408
    Points : 260
    Points
    260
    Par défaut
    [quote="dev01"]
    Citation Envoyé par Harry_polin
    Certain controle sont déja double buffered sous .NET 1.1 .
    Heu... lesquels et comment fait-on ?
    Parceque aucun de ceux de mon application ne l'est...
    ZTAB (Ze Text Adventure Builder)

    Logiciel très intuitif et ergonomique de création de jeux d'aventure et de livres dont vous êtes le héros.

    http://sites.google.com/site/ztabsoft/

  9. #9
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut Re: [vb.net] probleme d'affichage
    Citation Envoyé par neguib
    ok alors je te suggère de le rendre visible qu'après l'opération
    Oui, comme j'ai dis, c'est la solution pour laquelle j'ai opter.


    Ca m'interesse également de savoir quels controls sont double buffered. :

    Harry_polin>
    flickering = léger scintillement à l'écran.

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Je suis du même avis que dev1, cela fait reférence habituellement à ceux qui dessinent leur propre controle et utilise l' Énumération ControlStyles
    Citation Envoyé par MSDN
    DoubleBuffer
    Si la valeur true est affectée, le dessin s'effectue dans une mémoire tampon ; une fois terminé, le résultat s'affiche à l'écran. La double mise en mémoire tampon empêche le scintillement survenant lorsque le contrôle se redessine. Pour totalement activer la double mise en mémoire tampon, vous devez aussi affecter true aux bits de style UserPaint et AllPaintingInWmPaint.
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  11. #11
    Membre actif
    Homme Profil pro
    Création de jeux video (en amateur)
    Inscrit en
    Mars 2003
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Cantal (Auvergne)

    Informations professionnelles :
    Activité : Création de jeux video (en amateur)
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2003
    Messages : 408
    Points : 260
    Points
    260
    Par défaut
    après lecture du lien de neguib, je ne comprends toujours pas très bien certaines choses :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myControl.SetStyle(UserPaint Or AllPaintingInWmPaint Or DoubleBuffer, True)
    ceci marche-t-il sur tous les contrôles ?
    cela ne marche-t-il que dans le cas de UserControl, ou control hérités, ou bien aussi sur les contrôles existant (treeview, listbox, etc..) ? si oui lesquels ?
    ZTAB (Ze Text Adventure Builder)

    Logiciel très intuitif et ergonomique de création de jeux d'aventure et de livres dont vous êtes le héros.

    http://sites.google.com/site/ztabsoft/

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Comme la méthode SetStyle est un membre protégé de Control, elle est accessible à tous ses dérivés.
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  13. #13
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut
    J'ai mis mon control tab en double buffer, mais je ne vois aucune différence lorsque je bouge mes tabpages. Je vais en rester au Visible je pense.

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Points : 7 879
    Points
    7 879
    Par défaut
    Je n'ai pas testé graphicsxp
    mais si j'ai bien compris ton souci n'arrive que lors d'un swap de tes Onglets. Peux-tu faire des essais en jouant sur les paramètres suivants:
    TabControl.DrawMode = OwnerDrawFixed
    Déplacer du code sur le Paint avec un SuspendLayout...
    :
    Pour le bien de ceux qui vous lisent, ayez à coeur le respect du forum et de ses règles

  15. #15
    Membre éprouvé Avatar de graphicsxp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    758
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Luxembourg

    Informations forums :
    Inscription : Avril 2004
    Messages : 758
    Points : 1 022
    Points
    1 022
    Par défaut
    ok, je vais essayer ca, des que j'aurais terminé des trucs plus urgent...

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

Discussions similaires

  1. [vb.net] [DesignMode] probleme d'affichage en mode design
    Par graphicsxp dans le forum Windows Forms
    Réponses: 5
    Dernier message: 10/02/2006, 10h28
  2. [vb.net][gdi+] probleme d'affichage
    Par graphicsxp dans le forum Windows Forms
    Réponses: 2
    Dernier message: 12/12/2005, 11h06
  3. [CR.NET] Probleme d'affichage d'image
    Par ahervieux dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 25/06/2005, 14h06
  4. [VB.NET] Probleme d'affichage entre ListBox/TextBox
    Par Monster77 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/08/2004, 11h02
  5. [VB.NET] Probleme d'affichage de controle
    Par mic56 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 09/06/2004, 15h03

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