"balises" dans une RTB

Résolu
Signaler
Messages postés
2
Date d'inscription
vendredi 29 octobre 2004
Statut
Membre
Dernière intervention
27 août 2006
-
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
-
Bonsoir à tous !

Je programme actuellement un petit client IRC et j'aimerai savoir comment utiliser les balises rtf en vb pour mettre par example en gras dans une rtb un bout de texte (le pseudo) et le reste en caracteres normaux par example.

J'ai vaguement essayé de placer \b texte \b0 par ci par la mais le resultat n'y est pas '^^

Ce que je veux savoir c'est par example comment mettre en gras:

myrtb.texte = texteengras & textenormal

dans la même RTB enfin je pense expliquer pas trop mal mon soucis :P

Merci pour les eventuelles reponses !

3 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Si tu avais pris le temps de charger une ou deux applications qui parlent de RichTextBox (RTB), tu saurais que ça ne se fait pas par balise :
RTB.Text = "Bonjour tout le monde"
RTB.SelStart = 0
RTB.SelLength = Len("Bonjour")
RTB.SelColor = vbRed
RTB.SelBold = True

Tout réside dans la bonne sélection du début du texte et de la longueur qui suit.
Attention, le repérage des caractères dans une RTB commence à 0, pas à 1

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Re
Oui, si tu as copié/collé ce code tel quel, tout sera en gras puisque tu lui dit de commencer les modifs à 0.
Il te faut donc mémoriser la position de début de modif avant de commencer.
Je me répète : Si tu avais pris le temps de lire et analyser une ou deux sources qui utilisent des RTB, tu saurais comment faire.
De plus, maintenant que je t'ai donné les instructions clés (celles commençant par .Sel), il te serait facile de regarder dans l'aide pour comprendre à quoi elles servent et comment d'en servir + de simples essais personnels

Bah au moment où tu insères le texte "nick$" à la fin du texte existant :
RTB.SelStart = Len(RTB.Text) - 1
RTB.SelLength = Len("nick$")
RTB.SelText = "nick$"
RTB.SelColor = vbJaunePoisRouge
RTB.SelBold = True
RTB.Underline = True

Bien sûr, il faudra faire de même avec les textes qui suivent.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
Messages postés
2
Date d'inscription
vendredi 29 octobre 2004
Statut
Membre
Dernière intervention
27 août 2006

Hum merci de la reponse mais je ne comrpend pas trop l'utilisation :s

Par example je veux uniquement mettre en gras le pseudonyme (nick$) comment est-ce que je peux mettre en couleur uniquement nick$ ? A chaque fois tout le contenu de la RTB fi ni en gras.

Merci d'avance.