Ajouter un commentaire

fredericmazue

Quote:
Existe t -il un buffer d'affichage que l'on peut vider pour actualiser l'affichage ??? je suppose!!! Identique au buffer d'ecriture d'un fichier que l'on vide à dessein par la fonction flush().

Non rien à voir. Le problème est que les opérations de sauvegarde sont faites, à l'insu de ton plein gré, dans le même thread que celui s'occupe de rafraîchir l'affichage et il y a embouteillage.
Tu dois donc restructurer ton code

1) toute la sauvegarde tu dois la faire dans un thread séparé
2) depuis ce thread, tu écris chaque étape dans la ListBox, mais attention tu ne peux pas faire directement lalistbox.Items.Add(...
Ca marchera mal ou même plantera. Mais rien ne t'empêche d'essayer quand même:)
Ce qu'il faut faire est appeler la méthode lalistbox.Invoke et ce qu'on invoque par ce moyen est un délégué qui enveloppe lalistbox.Item.Add.
Moyennant quoi ça marchera. Parce que ce faisant le rafraîchissement de l'affichage se fera dans son propre thread qui n'est plus squeezé par ton opération de sauvegarde puisque celle-ci est placée dans un thread séparé.
Mais pour invoquer sainement depuis un thread une méthode de composant, il faut le faire par le biais de composant.Invoke.

Heu oui, avec un bout de code ça sera plus faicle et clair... Mais je n'ai pas le temps. :oops: Peut être qu'une bonne âme aura le temps et la gentillesse de t'écrire un bout de code en exemple pour compléter mes nébuleuses explications

Filtered HTML

Plain text

CAPTCHA
Cette question permet de vérifier que vous n'êtes pas un robot spammeur :-)
 FFFF  K  K  III   AA   PPPP  
F K K I A A P P
FFF KK I AAAA PPPP
F K K I A A P
F K K III A A P