Visual Basic - Printers VS Printers

Life is soft - evento anual de software empresarial
 
Vista:

Printers VS Printers

Publicado por Roberto (4 intervenciones) el 23/10/2000 00:00:00
Mi formulario se Imprime Ok en una HP 560C, pero un dia la impresora se rompió y colocaron una HP 680C en una terminal y en otra un Epson 400 Stylus Color; Ahy... el formulario sale desplazado abajo 0,5 Cm aproximadamente "NO PUEDE SER", estoy usando el método Printer.Print
GRACIAS
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Printers VS Printers

Publicado por Christian A. Valeria Celedón (207 intervenciones) el 23/10/2000 00:00:00
Si personalizas las propiedades CurrentX y CurrentY del objeto Printer, no debieras tener problemas con los márgenes. Observa el siguiente código:

Private Sub CMPrint_Click()
´Cambia el tipo de escala a centímetros
Printer.ScaleMode = vbCentimeters
´Establece los márgenes a 1.5 cm. a cada lado
Printer.CurrentX = 1.5
Printer.CurrentY = 1.5
´Imprime el nombre de la impresora
Printer.Print Printer.DeviceName
Printer.EndDoc
End Sub

Desgraciadamente, el método Print modifica los valores de CurrentX y CurrentY, ante lo cual lo más conveniente es ir guardando en variables auxiliares, la posición en la que se imprimirá. Por ejemplo:

Private Sub CMPrint_Click()
Dim CurX, Lineas
Printer.ScaleMode = vbCentimeters
´Establece el margen horizontal a 1.5 cm.
CurX = 1.5
For Lineas = 1 To 5
Printer.CurrentX = CurX
Printer.CurrentY = Lineas * 1.5
Printer.Print Printer.DeviceName
Next Lineas
Printer.EndDoc
End Sub

Pruébalo con un botón llamado CMPrint a ver si te resulta. De estar correcto, debería imprimir a la misma altura con todas las impresoras.
Cualquier duda, solo mándame un correo...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Printers VS Printers

Publicado por Leonardo (2 intervenciones) el 20/01/2001 00:00:00
Hola!

Es posible que el problema sea que la epson 440 tiene un márgen mínimo para agarrar la hoja mas grande que la hp.
Cuando yo pongo
printer.curreny=0
printer.currenX=0
printer.print "Hola"

el texto sale 0.5 cm más abajo del comienzo de la hoja.

Atentamente
Leonardo Garberoglio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar