OVH Cloud OVH Cloud

Formulaires longs à fermer : bon à savoir

1 réponse
Avatar
zazi
Une petite info à propos des formulaires longs à fermer (et à ouvrir, mais
surtout à fermer) dont il a déjà été question ici.

Il se trouve qu'un facteur très important de lenteur vient des listbox et
combobox dont la source est rechargée de nombreuses fois et avec lenteur à
la fermeture (et ceci avant même l'appel de form_close) dès que
l'utilisateur à modifié quelque chose dans le formulaire (taille colonne en
datasheet, et surtout filtre). Dans mon cas, un formulaire avec une bonne
vingtaine de combo peut prendre plus d'une minute à fermer.

La solution que j'ai trouvée est de vider le controlSource de chaque combo,
de le mettre dans le tag (par exemple) et, les combo étant répartis dans
plusieures pages d'onglets, de recharger dynamiquement les controlSource
lors des changements de page d'onglet. Ca fonctionne au poil. J'ai une
petite classe qui fait ça automatiquement. Je peux la donner si cela
intéresse quelqu'un.

Zaz

1 réponse

Avatar
Yann
Salut Zazi,
La classe... C'est intéressant :o) Peux-tu me l'envoyer ?

Merci

P.S. : retir 1 "o" dans yahooo

Bye
Yann

-----Message d'origine-----
Une petite info à propos des formulaires longs à fermer
(et à ouvrir, mais

surtout à fermer) dont il a déjà été question ici.

Il se trouve qu'un facteur très important de lenteur
vient des listbox et

combobox dont la source est rechargée de nombreuses fois
et avec lenteur à

la fermeture (et ceci avant même l'appel de form_close)
dès que

l'utilisateur à modifié quelque chose dans le formulaire
(taille colonne en

datasheet, et surtout filtre). Dans mon cas, un
formulaire avec une bonne

vingtaine de combo peut prendre plus d'une minute à
fermer.


La solution que j'ai trouvée est de vider le
controlSource de chaque combo,

de le mettre dans le tag (par exemple) et, les combo
étant répartis dans

plusieures pages d'onglets, de recharger dynamiquement
les controlSource

lors des changements de page d'onglet. Ca fonctionne au
poil. J'ai une

petite classe qui fait ça automatiquement. Je peux la
donner si cela

intéresse quelqu'un.

Zaz


.