Hola gente del foro, les comento mi problema. tengo que imprimir un listado de clientes de un FORM, ya hice el boton imprimir y funciona bien, el problema es que para no estar gastando tinta cada vez que pruebo la configuracion de la hoja, hice un boton de vista previa con un picturebox, pero este solo me muestra los titulos que se van a imprimir y no los registros de los clientes que estan dentro de una listview.
Espero que puedan ayudarme con esto.
Desde ya muchas gracias...
Por las dudas les mando los codigos que use:
Código:
Private Function IMPRIMIR(TEXTO As String, X As Integer, Y As Integer)
VP.CurrentX = X
VP.CurrentY = Y
VP.Print TEXTO
End Function
Código:
Private Sub Command2_Click()
VP.Visible = True
With FrmVistaPreliminar
'VP.Orientation = 1
VP.ScaleMode = 6
VP.ScaleHeight = 297
VP.ScaleWidth = 210
VP.FontSize = 20
VP.Print ""
VP.Print " LISTADO DE CLIENTES" '40
VP.Print ""
VP.FontSize = 12
P = 1
VP.Print " FECHA:"; Date; " HORA:"; Time; " PAG: "; P
VP.Print ""
VP.Print "NRO.CLIENTE"; " NOMBRE"; " DOMICILIO"; " LOCALIDAD"
VP.ScaleMode = vbCentimeters
POSY = 40
I = 0
For I = 1 To L
If ListView.ListItems.Item(I).TEXT = "" Then
Else
Call CL
POSX = 15
VP.FontSize = 12
IMPRIMIR ListView.ListItems.Item(I), POSX, POSY
POSX = POSX + 20
IMPRIMIR ListView.ListItems(I).SubItems(1), POSX, POSY
POSX = POSX + 70
IMPRIMIR ListView.ListItems(I).SubItems(4), POSX, POSY
POSX = POSX + 86
IMPRIMIR ListView.ListItems(I).SubItems(8), POSX, POSY
POSY = POSY + 5
End If
Next I
'Printer.EndDoc
'Show vbModal
End With
End Sub