Label qui scintille

Résolu
Malokoxis
Messages postés
83
Date d'inscription
lundi 3 janvier 2011
Statut
Membre
Dernière intervention
22 février 2021
- 6 août 2019 à 12:23
Malokoxis
Messages postés
83
Date d'inscription
lundi 3 janvier 2011
Statut
Membre
Dernière intervention
22 février 2021
- 11 août 2019 à 10:52
Bonjour,

J'ai un label qui est mise à jour très souvent, parfois toutes les ms, pour afficher l'évolution d'une tâche.
Quelle est la meilleurs solution pour qu'il ne scintille pas ?

J'ai pensé à l'actualisé moins souvent, avec un timer par exemple, mais ça veut dire changer pas mal de code (il y a beaucoup d'étapes dans la tâche et le texte change à chaque étape).

Merci

2 réponses

vb95
Messages postés
2636
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
27 mai 2022
151
8 août 2019 à 13:45
Bonjour
Quel intérêt d'avoir un label qui change aussi vite ?
Supprimes le carrément
0
Malokoxis
Messages postés
83
Date d'inscription
lundi 3 janvier 2011
Statut
Membre
Dernière intervention
22 février 2021
2
8 août 2019 à 20:29
Merci de ta réponse vb95...
Si je demande comment faire c'est que j'ai besoin de ce label... Sinon effectivement je l'aurais supprimé.
J'ai fais la solution dont j'ai parlé dans mon post de départ
Ce n'était finalement pas si compliqué et ça marche bien.
Je stocke le texte dans une variable. Et un timer affiche la variable dans un label toute les 250ms. Cane clignote plus.
0
JeuDuTaquin
Messages postés
223
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
27 mai 2022
7
Modifié le 8 août 2019 à 23:35
Si je demande comment faire c'est que j'ai besoin de ce label... Sinon effectivement je l'aurais supprimé. 

Salut Vb95 et Malokoxis…
Malokoxis… ne me dit pas que tu utilisais le label comme zone de stockage !!!
C'est possible, mais fortement déconseillé.
En effet, le contrôle "LABEL", tout comme les "TEXTEBOX" interprètent le texte très sommairement, et en cas de texte en UTF8/16... ou autre textes exotiques, le texte récupéré sera corrompu avec des caractères "?" en lieu est place de caractères spéciaux hors Polices d'affichage, des caractères cabalistiques pour les accents !

Donc, utilise TOUJOURS une "String" en "PUBLIC" (margée ou pas), et non un contrôle. A l'état brut, tu n'auras pas d' "auto-conversion" sur une sortie (noms de fichiers, texte UTF et retours chariots auto-amputés.)
Sinon, en 250ms, on a pas trop le temps de tout lire…
;)
0
Malokoxis
Messages postés
83
Date d'inscription
lundi 3 janvier 2011
Statut
Membre
Dernière intervention
22 février 2021
2
9 août 2019 à 21:38
Non ce n'était pas du stockage, c'était de l'affichage pur. Mais maintenant je stocke dans une variable pour ensuite afficher toute le 250ms.
C'est un label d'affichage de progression (Ligne xxxx/xxxx).

D'ailleurs, cette application que j'ai créé fabrique des fichier KML contentant parfois plusieurs milliers de ligne. Et la je passe par un richtextbox comme stockage... Très, trop long... il faut que je passe cela par une variable. Il y a des contraintes particulières à passer de l'un à l'autre ?
0
JeuDuTaquin
Messages postés
223
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
27 mai 2022
7 > Malokoxis
Messages postés
83
Date d'inscription
lundi 3 janvier 2011
Statut
Membre
Dernière intervention
22 février 2021

Modifié le 10 août 2019 à 07:13
Tu peux aussi rafraîchir tous les 100 lignes…

if (NewVal\100)*100<>left(ValLabel.text,instr(ValLabel.text,"L") -1) THEN
     ValLabel.text=(NewVal\100)*100 & " Lignes \ " & TotLigne
end if


Nota : "\" et non "/", car ça te donne une valeur entière.

ça mange pas mal de cycles, ..
Tu peux aussi faire deux Labels, un pour ~newval~ et un pour ~Lignes \ " & TotLigne~
Car tu gagnera du temps en supprimant le Left$.

LabTot.text="Lignes \ " & TotLigne
'(…)
if (NewVal\100)*100<>ValLabel.text THEN ValLabel.text=(NewVal\100)*100

Tu gagnera en rapidité...
0
Malokoxis
Messages postés
83
Date d'inscription
lundi 3 janvier 2011
Statut
Membre
Dernière intervention
22 février 2021
2 > JeuDuTaquin
Messages postés
223
Date d'inscription
mardi 4 juillet 2017
Statut
Membre
Dernière intervention
27 mai 2022

11 août 2019 à 10:52
Merci JeuDuTaquin.
0
vb95
Messages postés
2636
Date d'inscription
samedi 11 janvier 2014
Statut
Modérateur
Dernière intervention
27 mai 2022
151
8 août 2019 à 21:22
Penses à clôturer le sujet ( avec la roue dentée en haut à droite)
Merci
0