cs_maxwells
Messages postés31Date d'inscriptionlundi 14 mars 2005StatutMembreDernière intervention 9 novembre 2008
-
18 avril 2005 à 13:41
cs_maxwells
Messages postés31Date d'inscriptionlundi 14 mars 2005StatutMembreDernière intervention 9 novembre 2008
-
18 avril 2005 à 14:19
Bonjour voici un code qui donne l'effet d'une animation dans un label :
Dim Count as integer
Private sub form_load
Timer1.enabled = true
Timer1.interval = 1
Count = 0
End Sub
Private sub Timer1_Timer()
Dim T
Count = Count + 1
T = 200If Count T then Label1.caption "B"If Count T + 2 then Label1.caption "Bo"If Count T + 4 then Label1.caption "Bon"If Count T + 6 then Label1.caption "Bonj"If Count T + 8 then Label1.caption "Bonjo"If Count T + 10 then Label1.caption "Bonjou"If Count T + 12 then Label1.caption "Bonjour"If Count T + 16 then Label1.caption "Bonjour t"If Count T + 18 then Label1.caption "Bonjour to"If Count T + 20 then Label1.caption "Bonjour tou"If Count T + 22 then Label1.caption "Bonjour tout"If Count T + 26 then Label1.caption "Bonjour tout l"If Count T + 28 then Label1.caption "Bonjour tout le"If Count T + 32 then Label1.caption "Bonjour tout le m"If Count T + 34 then Label1.caption "Bonjour tout le mo"If Count T + 36 then Label1.caption "Bonjour tout le mon"If Count T + 38 then Label1.caption "Bonjour tout le mond"If Count T + 40 then Label1.caption "Bonjour tout le monde"If Count T + 44 then Label1.caption "Bonjour tout le monde !"If Count T + 46 then Label1.caption "Bonjour tout le monde !!"If Count T + 48 then Label1.caption "Bonjour tout le monde !!!"
End Sub
Voilà je pense que vous serez d'accord avec moi que ce code est très long.
Et quand il s'agit de faire apparaître tout un texte comme ça; ça vous rend fou.
J'aurais voulu savoir s'il est possible de raccourcir de ce code (probablement, mais je ne sais comment).
Existe-t-il une fonction du même genre que la fonction Right(Anystring, 3) mais qui lirait seulement le troisième caractère ,et pas comme celle-ci qui renvoie les 3 premiers caractères en partant de la droite.
Merci de votre aide.
[mailto:M@xwells M@xwells] M@ni@c
La vie est injuste et il nous faut l'accepter comme elle nous vient.
A voir également:
Besoin d'aide pour raccourcir un code : animation d'un label
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 18 avril 2005 à 14:03
Dim Count As Integer
Dim Chaine As String
Private Sub form_load()
Timer1.Enabled = True
Timer1.Interval = 1
Chaine = "Bonjour tout le monde !!!"
End Sub
Private Sub Timer1_Timer()
Count = Count + 1
If Count < 200 Then Exit Sub
Label1.Caption = Left$(Chaine, (Count - 199) \ 2)
If Count > 248 Then Timer1.Enabled = False
End Sub
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 20091 18 avril 2005 à 14:06
Pour ta fonction "du même genre que la fonction Right(Anystring, 3) mais qui lirait seulement le troisième caractère ,et pas comme celle-ci qui renvoie les 3 premiers caractères en partant de la droite." Tu peux utiliser Mid :
TroisièmeLettre = Mid(String, 3)
Pour ton Timer :
Dim intCount As Integer
Private Sub form_load()
Timer1.Enabled = True
Timer1.Interval = 2
intCount = 0
End Sub
Private Sub Timer1_Timer()
Dim Str As String
Str = "Bonjour tout le monde !!!"
intCount = intCount + 1
If intCount > 100 Then
Label1.Caption = Left(Str, intCount - 100)
End If
End Sub
Gobillot
Messages postés3140Date d'inscriptionvendredi 14 mai 2004StatutMembreDernière intervention11 mars 201934 18 avril 2005 à 14:13
c'est vrai qu'avec un timer de 2 et compter de 1 en 1 c'est mieux qu'un Timer de 1 et compter de 2 en 2.
j'avais remarqué la chose.
de toute façon vu la précision du Timer, en dessous de 10 c'est pas valable.
djechiant
Messages postés12Date d'inscriptionjeudi 10 mars 2005StatutMembreDernière intervention18 avril 2005 18 avril 2005 à 13:53
Bonjour à toi.
Il existe la fonction "mid" qui te demande d'entrer la chaine de caractere l'endroit ou tu veux te placer et le nombre de caractere a mettre en oeuvre.
ex:
text1.text=text1.text + mid ("Bonjour tout le monde !!!",3,1)
ce bout de code permet de rajouter la lettre "n" à la chaine de carac déjà présente dans la textbox
J espere t avoir aidé
Djechiant vous salut
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_maxwells
Messages postés31Date d'inscriptionlundi 14 mars 2005StatutMembreDernière intervention 9 novembre 2008 18 avril 2005 à 14:19
Merci à Gobillot et Madmatt.
J'étudierai vos propositions ce soir.
Il est vrai que la remarque du Timer en 1 au lieu de 2 j'aurai pu y penser mais merci quand même.
THANK YOU TO THE COMMUNITY CODES SOURCES
[mailto:M@xwells M@xwells] M@ni@c
La vie est injuste et il nous faut l'accepter comme elle nous vient. (Ici la vie est très clémente avec moi puisqu'en l'espace d'une vingtaine de minutes j'ai obtenu 3 réponses à mon problème. Je le dis aujourd'hui : "LA COMMUNAUTE CODES SOURCES EST TRES EFFICACE !!!!!" [mailto:M@xwells M@xwells] M@ni@c)
P.S. : Jadore les smileys