metodo Printform y objeto printer
Hola que tal!
Tengo un problema con mi proyecto que os paso a contar:
Resulta que quiero imprimir ciertos formularios del proyecto, por lo que utilice el metodo printform, pero me di cuenta que mediante este metodo la impresion no coge toda la hoja sino que imprime el tama帽o tal cual del formulario, todo esto contando que utilizo una resolucion de 1024x... y aun asi no ocupa todo el folio, me han dicho que utilice el objeto printer pero no se nada de el. Mi pregunta es: mediante el objeto printer puedo imprimir todo lo que yo quiera del formulario y con la medida que yo quiera es decir que me ocupe todo el folio? o con que lo puedo hacer, es la primera vez que intento imprimir algo del proyecto y estoy muy perdido, agradeceria mucho vuestra ayuda.
Tengo un problema con mi proyecto que os paso a contar:
Resulta que quiero imprimir ciertos formularios del proyecto, por lo que utilice el metodo printform, pero me di cuenta que mediante este metodo la impresion no coge toda la hoja sino que imprime el tama帽o tal cual del formulario, todo esto contando que utilizo una resolucion de 1024x... y aun asi no ocupa todo el folio, me han dicho que utilice el objeto printer pero no se nada de el. Mi pregunta es: mediante el objeto printer puedo imprimir todo lo que yo quiera del formulario y con la medida que yo quiera es decir que me ocupe todo el folio? o con que lo puedo hacer, es la primera vez que intento imprimir algo del proyecto y estoy muy perdido, agradeceria mucho vuestra ayuda.
Si, con el objeto Printer puedes hacer lo que quieras. Es lo m谩ximo, pero te aviso que es muy tedioso programarlo (y vas a gastar mucho papel en las pruebas)
En los procedimientos, debes declarar variables de precisi贸n simple (Double) y establecer cada coordenada X e Y, antes de enviar la orden a la impresora.
Precauc铆贸n OBVIA: NO se puede retroceder al utilizar este m茅todo en coordenadas tanto horizontales como verticales.
Me explico: si utilizas las coordenadas:
Printer.CurrentX = 12,2345
Printer.CurrentY = 25,3317
Printer.print "Hola soy Valen"
no puedes luego (sin hacer un salto de p谩gina)
utilizar por ejemplo:
Printer.CurrentX = 11,500
Printer.CurrentY = 6,3
Printer.Print "Se mare贸 la impresora"
TAMPOCO OLVIDES ESTO:
Printer.EndDoc
Te aviso que debes tener precauci贸n con el ScaleMode y con el signo de los decimales (seg煤n tu configuraci贸n del Panel de Control, quiz谩s debas usar puntos en lugar de comas)
En el ejemplo que digit茅 ahora, directamente en el mail (puedo tener errores de sintaxis involuntarios), he supuesto ScaleMode = 6 (mil铆metros) y aunque no lo creas... VB puede fijar la impresi贸n con una precisi贸n de diezmil茅simas de mil铆metros !!!!!!!! GUAU!!
Yo he elaborado programas de uso comercial que hacen eso y me ha costado semanas ponerlo a punto, que utiliza hasta c贸digo de barras.
Si quieres un ejemplo mas elaborado, me escribes a mi correo.
Suerte ...
En los procedimientos, debes declarar variables de precisi贸n simple (Double) y establecer cada coordenada X e Y, antes de enviar la orden a la impresora.
Precauc铆贸n OBVIA: NO se puede retroceder al utilizar este m茅todo en coordenadas tanto horizontales como verticales.
Me explico: si utilizas las coordenadas:
Printer.CurrentX = 12,2345
Printer.CurrentY = 25,3317
Printer.print "Hola soy Valen"
no puedes luego (sin hacer un salto de p谩gina)
utilizar por ejemplo:
Printer.CurrentX = 11,500
Printer.CurrentY = 6,3
Printer.Print "Se mare贸 la impresora"
TAMPOCO OLVIDES ESTO:
Printer.EndDoc
Te aviso que debes tener precauci贸n con el ScaleMode y con el signo de los decimales (seg煤n tu configuraci贸n del Panel de Control, quiz谩s debas usar puntos en lugar de comas)
En el ejemplo que digit茅 ahora, directamente en el mail (puedo tener errores de sintaxis involuntarios), he supuesto ScaleMode = 6 (mil铆metros) y aunque no lo creas... VB puede fijar la impresi贸n con una precisi贸n de diezmil茅simas de mil铆metros !!!!!!!! GUAU!!
Yo he elaborado programas de uso comercial que hacen eso y me ha costado semanas ponerlo a punto, que utiliza hasta c贸digo de barras.
Si quieres un ejemplo mas elaborado, me escribes a mi correo.
Suerte ...
