Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Vista previa antes de imprimir...

Estas en el tema de Vista previa antes de imprimir... en el foro de Visual Basic clásico en Foros del Web. 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 ...
  #1 (permalink)  
Antiguo 20/11/2008, 07:42
 
Fecha de Ingreso: marzo-2008
Mensajes: 47
Antigüedad: 16 años, 1 mes
Puntos: 1
Vista previa antes de imprimir...

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. (¿COMO LOGRO MOSTRAR ESTOS REGISTROS?)


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
  #2 (permalink)  
Antiguo 20/11/2008, 09:05
 
Fecha de Ingreso: noviembre-2008
Mensajes: 136
Antigüedad: 15 años, 5 meses
Puntos: 2
De acuerdo Respuesta: Vista previa antes de imprimir...

Saludos, segun veo en tu codigo solamente estas imprimiendo una fila del Listview, creo que ese seria el problema.

Código:
    Dim xItem As ListItem
    Dim iRow As Integer
    For iRow = 1 To ListView1.ListItems.Count
        Set xItem = ListView1.ListItems(iRow)
        Me.Print xItem.Text
        Me.Print xItem.SubItems(1)
        Me.Print xItem.SubItems(2)
    Next
Con eso recorres todas las filas del Listview.

Espero que te sea de utilidad.
  #3 (permalink)  
Antiguo 24/11/2008, 08:52
 
Fecha de Ingreso: marzo-2008
Mensajes: 47
Antigüedad: 16 años, 1 mes
Puntos: 1
Respuesta: Vista previa antes de imprimir...

Muchas gracias judgement... Me ha sido de mucha ayuda lo tuyo, aunque ahora me surge el problema de que los campos del registro aparecen uno debajo del otro y no al lado.

Por ejemplo:

"CLIENTE" "NRO." "LOCALIDAD"
PEREZ JUAN
100
SANTA FE
SANCHEZ TITO
101
BUENOS AIRES


Nose si me explico... Pero gracias igual por tu ayuda!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:50.