Imprimer un textbox multiline

Henri - 1 mai 2001 à 16:29
 Henri - 2 mai 2001 à 22:56
Pour imprimer le contenu d'un textbox je fais :
Printer.Print textbox1
Seulement il n'y a que la 1ère ligne qui est imprimée.
Comment faire ?
Merci

2 réponses

Il faut que tu envoie les lignes de ton TextBox une à une à l'imprimante. Voici un tit exemple, il n'est peut-être pas parfait mais bon c'est juste un exemple ;),

Private Sub cmdPrintText_Click()

' Rien à imprimer alors on quit
If Trim$(TextBox1.Text) = "" Then Exit Sub

Dim lStart As Long
Dim lLength As Long
Dim Texte As String
Dim Temp As String

Texte = TextBox1.Text

' Position de départ
lStart = 1

' Recherche le premier retour de chariot(fin de ligne)
lLength = InStr(lStart, Texte, vbCrLf)

If lLength > 0 Then ' Si une ligne(retour de chariot) à été trouver

' On boucle tant qu'il en trouve
Do

If lLength > 0 Then

Temp = Mid$(Texte, lStart, lLength - lStart)

' Envoie la ligne trouver à l'imprimante
Printer.Print Temp

End If

' Incémente la position de départ
lStart = lLenght + Len(vbCrLf)

' Recherche la prochaine ligne
lLength = InStr(lStart, Texte, vbCrLf)

DoEvents ' Laisser respirer le system un ti peu ;)

Loop Until lLength <= 0 ' Tant qu'il trouve des retour de chariot

Else

' Pas plus d'une linge alors on imprime juste une
Printer.Print Texte

End If

' On imprime le texte!
Printer.EndDoc

End Sub


Désoler pour les fautes de frappe s'il y en à je les fais en direct sur le forum :) . Si y'à un problème avec ce code ou autre ben écrit moi,

[mailto:NitRic28@Hotmail.com NitRic]
0
Merci beaucoup, je n'aurais pas trouver. Ca fonctionne.
Mais je dois tout de même faire d'autres essais sur différentes imprimantes, car la mienne est partie en révision et me cause quelques soucis.
Amicalement.
Henri
0
Rejoignez-nous