cs_mpc
Messages postés15Date d'inscriptionlundi 26 janvier 2004StatutMembreDernière intervention27 mars 2007
-
28 janv. 2004 à 17:38
cs_mpc
Messages postés15Date d'inscriptionlundi 26 janvier 2004StatutMembreDernière intervention27 mars 2007
-
24 févr. 2005 à 21:10
je fais défiler un texte automatiquement. Je souhaite changer la couleur de ce texte mot par mot et ce de manière automatique. Pouvez-vous m'aider?
Merci
mp
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 28 janv. 2004 à 18:22
Le plus simple, pour faire de la coloration mot à mot, c'est soit d'utiliser un contrôle Label par mot avec une couleur différente pour chaque mot, soit d'utiliser un contrôle RichTextBox grâce à ses propriétés SelColor pour faire de la coloration mot à mot, ou alors, passer par des fonctions de tracé de texte (Fonction Print de VB ou DrawText en fonction API), et à ce moment là, un PictureBox fait très bien l'affaire !
A toi de voir selon ton expérience de VB et selon le temps de recherche que tu peux y consacrer. Note : je pense avoir classé les possibilités par ordre croissant de difficulté, mais également par ordre croissant d'optimisation !
DarK Sidious
[Responsable de la rubrique API et responsable VB du site www.ProgOtoP.com]
cs_mpc
Messages postés15Date d'inscriptionlundi 26 janvier 2004StatutMembreDernière intervention27 mars 20071 28 janv. 2004 à 20:06
merci beaucoup pour ton aide. J'ai réussi à colorer mon texte par mot mais cela donne un effet saccadé. J'aurais voulu avoir un effet plus fluide comme dans un karaoké. Je vais continuer à chercher parmi les pistes que tu m'as indiquées.
mp
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 28 janv. 2004 à 20:25
Tout dépend de la méthode que tu as choisie : avec un timer relativement rapide, ca va clignoter avec les labels !
Avec un timer lent, ca va saccader avec toutes les méthodes que je t'ai donné !
L'idéal serait d'utiliser les fonctions API, mais c'est la méthode la plus compliqué à mettre en oeuvre !
DarK Sidious
[Responsable de la rubrique API et responsable VB du site www.ProgOtoP.com]
cs_mpc
Messages postés15Date d'inscriptionlundi 26 janvier 2004StatutMembreDernière intervention27 mars 20071 24 févr. 2005 à 21:10
Bonsoir,
je n'ai pas vraiment réussi à faire ce que je voulais (j'ai fini par renoncer) mais je t'envoie ce que j'ai fait. en fait, j'ai un texte qui défile continuellement et je change la couleur 10 lettres à la fois.
voici le code du timer:
Private Sub Timer1_Timer()
rt1.Text = Right(rt1.Text, Len(rt1.Text) - 1) & Left(rt1.Text, 1)
rt1.Span "-", True, True
rt1.SelStart = rt1.SelStart + 1
rt1.SelLength = 10
rt1.SelColor = vbRed
End Sub
les 2 1ères lignes servent à faire défiler le texte (je ne sais plus pourquoi j'ai utilisé cela !!) et le reste sert à changer la couleur.
Voilà, j'espère que cela répond à ta question.