Richtextbox

Résolu
cs_ludwig89 Messages postés 47 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 18 septembre 2009 - 23 sept. 2004 à 16:11
cs_ludwig89 Messages postés 47 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 18 septembre 2009 - 24 sept. 2004 à 15:14
bonjour

voila g des données dans une richtextbox

je voudrai tester toutes les lignes
si une ligne du richtext box commence par % alors je la met en gras, avec la police tatata la couleur tatata...
si une ligne du richtext box commence par ( alors je la met en gras, avec la police tatata la couleur tatata...

et comment rajouter une ligne au tout debut??

meric bcp

9 réponses

Fulgy Messages postés 85 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 5 octobre 2004
23 sept. 2004 à 16:52
Re.
J'ai oublié ta dernière question: pour ajouter en début de textbox, ça doit ce faire comme ça non?: richtextbox.Text = NouveauText & richtextbox.Text.
ReA+
3
Fulgy Messages postés 85 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 5 octobre 2004
24 sept. 2004 à 10:23
Salut.
Bon j'ai revu mon code jusqu'a ce que ça marche.

Private Sub ParseText()

Dim Position As Long
Dim rtbSave As String

rtbSave = rtb.Text
rtb.Text = ""
Position = 1
Do Until Position = 0
   ConfFont Position, rtbSave
   Position = InStr(Position + 1, rtbSave, vbNewLine)
Loop
rtbSave = ""

End Sub

Private Sub ConfFont(ByVal Position As Long, ByVal rtbSave As String)

Dim Bold As Boolean
Dim Color As Long
Dim Italic As Boolean
Dim NextPos As Long
Dim Flg As Long

If Position = 1 Then
   Flg = 0
Else
   Flg = 2
End If
Select Case Mid(rtbSave, Position + Flg, 1)
   Case "%"
      'instructions de configuration des variables
   Case "("
      'instructions de configuration des variables
   Case Else
      'instruction de cofiguration des variables dans un cas "normal"
End Select
NextPos = InStr(Position + Flg, rtbSave, vbNewLine)If NextPos 0 Then NextPos Len(rtbSave) + 1
With rtb
   .SelColor = Color
   .SelBold = Bold
   .SelItalic = Italic
   .SelText = Mid(rtbSave, Position, NextPos - Position)
End With

End Sub


Ouf! Et voilou ça devrait marcher là :)
A+
3
Fulgy Messages postés 85 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 5 octobre 2004
23 sept. 2004 à 16:47
Lut.

Private Sub ParseText()

Dim Position As Long

Position = InStr(1, richtextbox.Text, vbNewLine)
Do Until Position = 0
ConfFont Position
Position = InStr(Position + 1,richtextbox.Text, vbNewLine)
Loop

End Sub

Private Sub ConfFont(ByVal Position As Long)

Dim Bold As Boolean
Dim Color As Long
Dim Italic As Boolean
Dim NextPos As Long

Select Case Mid(Position + 1, richtextbox.Text, 1)
Case "%"
Bold = ...
Color = ...
Italic = ...
Case "("
Bold = ...
Color = ...
Italic = ...
End Select
NextPos = InStr(Position + 1, richtextbox.Text, vbNewLine)If NextPos 0 Then NextPos Len(richtextbox.Text)
With richtextbox
.SelColor = Color
.SelBold = Bold
.SelItalic = Italic
.SelText = Mid(Position + 1, richtextbox.Text, NextPos - Position + 1)
End With

Bon je te préviens je viens de faire tous ça à l'arrache donc ce serait pas étonnant que ça marche pas, mais ça doit être la démarche qu'il faut adopté. A+
0
cs_ludwig89 Messages postés 47 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 18 septembre 2009
23 sept. 2004 à 16:55
meri bcp de ton aide

j'essai ca de suite

a+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_ludwig89 Messages postés 47 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 18 septembre 2009
23 sept. 2004 à 17:14
il met met une erreur avec l'instruction

Select Case Mid(Position + 1, frmMain.RichTextBox1.Text, 1)

il met dit type incompatible

est ce parce que j'utilise vbCrLf entre chaque ligne??????????

rea+
0
Nightcourrier Messages postés 118 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 28 mars 2008
23 sept. 2004 à 19:54
Salut à tous,
comme vous parlez de TextRichBox vous pouvez peut-etre m'aider ...

Je veux loader un fichier Word dans un TextRichBox et pouvoir le sauvegarder.

J'ai trouver 2 solution

Pour l'ouverture.

1- RichTextBox1.LoadFile (nomFichier)

2- RichTextBox1.OLEObjects.Add , , , "NomFichier"

Avec la méthode 2 il m'apparait des menus ce que j'aime beaucoup.

Cependant, quand je veux sauvegarder ...

RichTextBox1.SaveFile (nomFichier)

Je perds mon menu. Je ne comprends pas pourquoi Merci de m'aider

Nightcourrier :)
0
Fulgy Messages postés 85 Date d'inscription mercredi 21 juillet 2004 Statut Membre Dernière intervention 5 octobre 2004
23 sept. 2004 à 20:25
Désolé pour le temps de réponse.

ludwig89: en fait je me suis planté dans le proto de la fonction Mid, j'ai mis Mid(start, string, length) alors que c'est Mid(string, start, length). Je m'en suis rendu compte en mettant dans un projet le code que je t'ai proposé, et j'ai testé... VB a planté :) Donc si y a d'autre problèmes que t'arrive pas à résoudre n'hésite pas à me demander :) Salut!

Nightcourrier: la fonction LoadFile du controle RichTextBox (ou TextRichBox comme tu veux ;) sert à loader des fichiers au format *.rtf que tu peux créer avec une RichTextBox et la fonction SaveFile (tu peux ouvrir le fichier sauvegardé avec notpad pour te rendre compte du format *.rtf). Si tu veux quand même utiliser ta première solution il faudra tout d'abord convertir le fichier word en fichier *.rtf. Bon courage, a+.
0
cs_ludwig89 Messages postés 47 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 18 septembre 2009
24 sept. 2004 à 08:14
salut fulgy

merci pour le temps que tu passe a tenter de resoudre mes prob
j'ai modifier le code avec Mid(string, start, length) et in n'y as plus de message d'erreur mais au final il ne se passe rien, j'ai l'impression que le code ne boucle pas sur toutes les lignes, l'instruction ne se fait qu'une fois alors que j'ai plusieurs lignes.

a+
0
cs_ludwig89 Messages postés 47 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 18 septembre 2009
24 sept. 2004 à 15:14
merci fulgy pour toute ton aide

a+
0
Rejoignez-nous