IMPRIMIR TEXTO

GOLVEIAR 22/01/2010 21:35:45
#332666
Olá galera vbmania blz? Eu tenho um txtPublica com propriedade multiline=True como faço pra imprimir o texto digitado com o metodo printer? eu usei Printer.Print Tab(10); txtPublica.text so que imprime a tabulação na primeira linha eu queria tabulação 10 em todas as linha se alguem puder me ajudar eu agradeço
MARCELO.TREZE 22/01/2010 21:41:41
#332667
Posta o código que usou, e se possivel uma imagem do texbox, para sabremos o que realmente vc deseja

GOLVEIAR 22/01/2010 22:00:43
#332670
Veja ai o exemplo
ASHKATCHUP 22/01/2010 22:43:55
#332671
Cara, o problema é que o texto é corrido. O textbox não coloca [Ô]chr(13)[Ô] ou qualquer outro caracter delimitando a linha. A quebra é meramente visual. Você vai ter que fazer algum código para quebrar, colocando chr(13).
CASSIOJFF 23/01/2010 01:16:37
#332676
Usa a rotina abaixo q funciona certinho
Printer.Print WordWrap$(txtconteudo.text, 55, 0.5)

Private Function WordWrap$(St$, Length, Pos)
[ô]- Onde St$ - textbox
[ô]- Onde Length - Tamanho da linha a ser impressa
[ô]- Onde Pos - Posição da CurrentX
[ô]- Alterada por Cássio Junqueira Franco Fabbri em 11/11/1998

Length = Length + 1
St$ = Trim$(St$)
Cr$ = Chr$(13)
Crlf$ = Chr$(13) & Chr$(10)

Do
l = Len(Nextline$)
s = InStr(St$, [Ô] [Ô])
c = InStr(St$, Cr$)

If c Then
If l + c <= Length Then
Printer.CurrentX = Pos
Printer.Print Left$(St$, c - 1)
Nextline$ = [Ô][Ô]
St$ = Mid$(St$, c + 2)
GoTo LoopHere
End If
End If
If s Then
If l + s <= Length Then
DoneOnce = True
Nextline$ = Nextline$ & Left$(St$, s)
St$ = Mid$(St$, s + 1)
ElseIf s > Length Then
text$ = text$ & Crlf$ & Left$(St$, Length)
St$ = Mid$(St$, Length + 1)
Else
Printer.CurrentX = Pos
Printer.Print Nextline$
Nextline$ = [Ô][Ô]
End If
Else
If l Then
If l + Len(St$) > Length Then
text$ = text$ & Nextline$ & Crlf$ & St$ & Crlf$
Else
text$ = text$ & Nextline$ & St$ & Crlf$
End If
Else
Printer.CurrentX = Pos
Printer.Print St$
End If
Exit Do
End If

LoopHere:

Loop
Printer.CurrentX = Pos
Printer.Print text$
End Function
TECLA 23/01/2010 09:25:58
#332680
Uma boa saída, seria você utilizar um DATAREPORT com um RECORDSET DESCONECTADO alimentando o gerador, e no final chamar o mesmo com a linha abaixo:

DataReport1.PrintReport, , rptRangeAllPages


A liberdade de formatação é muito maior do que o objeto PRINTER, pelo menos eu acho
E o resultado dá um [Ô]toque[Ô] profissional.
GOLVEIAR 23/01/2010 21:32:32
#332715
quem pode me mandar um exemplo. Obrigado ! Desde ja Agradeço a todos que postaram
GOLVEIAR 24/01/2010 07:16:55
#332723
sem datareport
Tópico encerrado , respostas não são mais permitidas