imprimir en vb 2005

vicente
20 de Junio del 2008
¿Tengo un proble ma en vb porfabor alludenme?

temgo un form MDI el cual tiene un form hijo que contiene barios texbox el cual qiuero imprimir sobre siertos puntos de la hoja el cual me hase falta el codigo para asignar donde deve imprimir.
Otro asunto, tengo el codigo para imprimir un solo texbox el cual es el siguiente y quiero que se impriman todos como learia .
gracias

Private Sub ArchivoImprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ArchivoImprimir.Click, btbarImprimir.Click
' Formulario hijo activo
Dim FormHijo As FormDocumento = Me
If FormHijo Is Nothing Then Return

'Se supone que durante el diseño se asignó a la propiedad Document
'de PrintDialog1 el objeto PrintDocument utilizado para imprimir.

'Permitir al usuario elegir el rango de páginas a imprimir.
PrintDialog1.AllowSomePages = True
If (PrintDialog1.ShowDialog() = Windows.Forms.DialogResult.OK) Then
'Si se pulsó el botón "Aceptar" (OK), entonces imprimir.
Dim texto As String = FormHijo.rtbText.Text
Dim seps() As Char = {ChrW(10), ChrW(13)} 'LF y CR
línea = texto.Split(seps) 'líneas de texto que hay que imprimir
totalLineasImpresas = 0
PrintDocument1.Print() 'invoca a ImprimirDoc_PrintPage
End If
End Sub

Private Sub ImprimirDoc_PrintPage(ByVal sender As System.Object, ByVal ev As System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage
'Formulario hijo activo
Dim FormHijo As FormDocumento = Me

'Insertar aquí el código para procesar la página.

Dim lineasPorPag As Single
Dim pos_Y As Single
Dim margenIzq As Single = ev.MarginBounds.Left
Dim margenSup As Single = ev.MarginBounds.Top

'Calcular el número de líneas por página
Dim fuente As Font = FormHijo.rtbText.Font
Dim altoFuente As Single = fuente.GetHeight(ev.Graphics)
lineasPorPag = ev.MarginBounds.Height / altoFuente

'Contador de las líneas impresas en una página
Dim lineasImpresasPorPag As Integer = 0
'Imprimir cada una de las líneas
While (totalLineasImpresas < línea.Length And lineasImpresasPorPag < lineasPorPag)
pos_Y = margenSup + (lineasImpresasPorPag * altoFuente)
ev.Graphics.DrawString(línea(totalLineasImpresas), fuente, Brushes.Black, _
margenIzq, pos_Y, New StringFormat)
lineasImpresasPorPag += 1
totalLineasImpresas += 1
End While

'Si quedan líneas por imprimir, siguiente página
If (totalLineasImpresas < línea.Length) Then
ev.HasMorePages = True 'se invoca de nuevo a ImprimirDoc_PrintPage
Else
ev.HasMorePages = False 'finaliza la impresión
End If
End Sub