Basculer des forms avec fluidité [Résolu]

Messages postés
3
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
25 mai 2011
- - Dernière réponse : cs_yannick93
Messages postés
3
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
25 mai 2011
- 25 mai 2011 à 15:00
Bonjour,
J'ai un problème a priori simple, mais qui me pose quelques soucis.
Je déclare des instances de plusieurs forms lors du splash.
Puis je navigue d'une form à une autre en utilisant Form.Show() et Form.Hide().
Ca fonctionne très bien, mais j'ai un affichage "saccadé": on voit tous les contrôles se construire les uns après les autres, etc.
Comment faire pour que les mises à jour de chaque form se fassent en arrière-plan, et que ainsi la navigation puisse être plus fluide ?
Afficher la suite 

Votre réponse

4 réponses

Meilleure réponse
Messages postés
124
Date d'inscription
vendredi 27 juin 2008
Statut
Membre
Dernière intervention
24 mars 2019
3
Merci
Il existe une propriété "doublebuffer" dans les forms qui est supposé éviter ce genre de scintillement mais personnellement je n'ai jamais eu l'impression que ça marche!

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 129 internautes nous ont dit merci ce mois-ci

Commenter la réponse de VbNicoG
Messages postés
124
Date d'inscription
vendredi 27 juin 2008
Statut
Membre
Dernière intervention
24 mars 2019
0
Merci
Bonjour,

J'ai eu un problème similaire avec mon appli. Cependant, c'est différent car je n'avais qu'une form principale et j'ai intégré des usercontrol pour les différentes page de cette form. L'affichage des usercontrol sur un clic d'une nouvelle page très saccadé la première fois.
J'ai donc forcé dans l'évènement load de la form, l'initialisation de tous mes usercontrols (en appelant une fonction publique dans ces derniers au lieu d'utiliser l'évènement load), ça prend quelques secondes en ce qui concerne car j'ai un paquet d'objets. Ce n'est plus saccadé.

Le problème avec les form et l'utilisation des hide et show, c'est que la form est réinitialisée à chaque fois (si je ne dis pas de bétises) et donc c'est saccadé.

Essaies de trouver un moyen d'initialiser toutes tes forms au démarrage et de jouer sur la visibilité ou non de ces forms. Sinon, utilises des Usercontrol si possible.
Commenter la réponse de VbNicoG
Messages postés
3
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
25 mai 2011
0
Merci
Bonjour,

Le FORM est généré durant le splah, et actualisé en arrière-plan, alors qu'il est masqué.
Il est donc prêt à être affiché, le souci c'est que lors du SHOW un des champs (une picturebox...) met du temps à s'afficher, d'où l'effet de scintillement.

Comment faire pour que la transition entre 2 forms déjà créés et actualisés soit plus fluide ?
Commenter la réponse de cs_yannick93
Messages postés
3
Date d'inscription
mardi 11 janvier 2011
Statut
Membre
Dernière intervention
25 mai 2011
0
Merci
Et bien détrompe-toi, ça résoud pas mal de choses !
C'est même très efficace dans mon cas.
Je dois uniquement voir avec les "RectangleShapes" de VisualBasic PowerPacks qui elles ne passent pas, mais je pense que pour le coup je vais m'en passer !
Commenter la réponse de cs_yannick93

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.