Couleur de ligne dans Richtextbox

Résolu
jolatripe Messages postés 8 Date d'inscription lundi 18 juillet 2005 Statut Membre Dernière intervention 8 septembre 2008 - 19 juil. 2005 à 10:02
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 - 19 juil. 2005 à 11:21
Je sais que le sujet a deja ete abordé maintes fois. Pourtant je comprends pas ce qui cloche dans mon code.
Vu que j'écris mes lignes les unes apres les autres, je pensais que je pouvais choisir ma couleur avant sans rien selectionner puis ecrire mais ca ne marche pas.
alors j'ai ecris ce code mais ca ne marche pas non plus. Quand j'ecris une nouvelle ligne ca reinitialise la couleur des lignes précédentes.

Private Sub button_Click()
diagno.SelColor = vbBlack
diagno.Text = ""





message = "zobby la mouche" & vbCrLf
diagno.Text = diagno.Text & message
diagno.SelStart = Len(diagno.Text) - Len(message)
diagno.SelLength = Len(message)
diagno.SelColor = vbRed





message = "turlute" & vbCrLf
diagno.Text = diagno.Text & message
diagno.SelStart = Len(diagno.Text) - Len(message)
diagno.SelLength = Len(message)
diagno.SelColor = vbYellow





message = "toto en string" & vbCrLf
diagno.Text = diagno.Text & message
diagno.SelStart = Len(diagno.Text) - Len(message)
diagno.SelLength = Len(message)
diagno.SelColor = vbGreen





message = "VIVE LES SCHTROUMPFS" & vbCrLf
diagno.Text = diagno.Text & message
diagno.SelStart = Len(diagno.Text) - Len(message)
diagno.SelLength = Len(message)
diagno.SelColor = vbMagenta





End Sub

3 réponses

BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
19 juil. 2005 à 10:50
ca marchera mieux comme ca

diagno.Text=""

message = "zobby la mouche" & vbCrLf
diagno.SelStart = Len(diagno.Text)
diagno.SelColor = vbRed
diagno.SelText = message


message = "turlute" & vbCrLf
diagno.SelStart = Len(diagno.Text)
diagno.SelColor = vbYellow
diagno.SelText = message

message = "toto en string" & vbCrLf
diagno.SelStart = Len(diagno.Text)
diagno.SelColor = vbGreen
diagno.SelText = message

message = "VIVE LES SCHTROUMPFS" & vbCrLf
diagno.SelStart = Len(diagno.Text)
diagno.SelColor = vbMagenta
diagno.SelText = message

BasicInstinct
3
jolatripe Messages postés 8 Date d'inscription lundi 18 juillet 2005 Statut Membre Dernière intervention 8 septembre 2008
19 juil. 2005 à 11:06
merci
effectivement la ca marche bien et c'est plus simple.
mais pkoi moi ca marchait pas
0
BasicInstinct Messages postés 1470 Date d'inscription mardi 5 février 2002 Statut Membre Dernière intervention 20 octobre 2014 12
19 juil. 2005 à 11:21
parce ce que tu réécris tout le texte a chaque fois...
donc tu perds la mise en forme.

la logique, c'est de placer le cuseur la ou tu veux ecrire (ici a la fin)
diagno.SelStart = Len(diagno.Text)

tu choisis la police, couleur....
diagno.SelColor = vbGreen

puis tu ecris ton texte
diagno.SelText = message

BasicInstinct
0
Rejoignez-nous