Hay alguna manera de imprimir el contenido de un Listbox
Hola
Tengo un ListBox , que relleno de esta manera :
Se muestra el contenido de listbox , una serie de lineas . La pregunta es , hay alguna manera de imprimir el contenido del listBox . Estoy mirando por ahí y no veo forma de hacerlo. Un saludo. |
En vez de Form1, pones Printer, tienes que utilizar la Unidad Printers para que te funcione correctamente. Un Saludo. |
Yo utilizo esto:
De todas formas, este código lo he puesto un poco de memorieta, y no estoy seguro de que esté completamente bien. Si alguien encuentra algún fallo, por favor, lo comunique. Salu2 :) |
La realidad es que ninguno de los dos códigos me funciona , el de ixMike no compila y el de marcoszorrilla , si compila pero luego da un error que dice : "Printer is not currently printer"
|
Pues te tiene que funcionar puesto que yo le he usado durante mucho tiempo para imprimir recibos y medidas no estándar. Un Salduo. |
Si que funciona , pero no imprime bien , pongo 4 lineas por ejemplo y las 3 primeras apenas se ven ,estan como solapadas , la ultima si sale medio bien .
Otra cosa , menos importante , pero que si se puede hacer , mejor y es que imprime directamente , sin preguntar en que impresora quieres imprimir . Esto seria un plus . |
bueno si en lugar de poner n * 20 pongo n * 40 sale bien ya .
Pero eso si , imprime directo |
Como se trata de un ejemplo no me esmerado mucho, pero ese número que has cambiado sería la separación entre una línea y otra por eso al aumentarlo puedes ver bien el texto.
Para más información consulta la ayuda del objeto Printer. Puedes cambiar el tipo de letra y tamaño etc...
Un Saludo. |
Mi código, un poco más completo, está aquí.
Pero igualmente creo que aún tiene un fallo (no sé dónde). |
Si por X o Y razón, decides no usar las opciones que Marcos y ixMike te han proporcionado, también puedes usar el evento OnNeedData del QuickReport, para recorrer tu ListBox e imprimirlo, de esa manera, podrás tener las ventajas que ofrece un reporteador.
|
Bueno, lo primero, quería decir que el método que puse lo copié de alguna parte, no recuerdo de donde, el caso es que me funcionó cuando lo copié. Pero eso fue hace años, y ya no recordaba muy bien como era. Lo siento.
El caso es que ese fue de cuando era un muy novato. Ahora que lo soy menos, me he dedicado a ojear un poco el código. Lo que hace es tomar la impresora como la salida de un fichero de texto. En la ayuda de Delphi del método AssignPrn está bien explicado. Seguramente el fallo estaba al utilizar también el objetro Printer (BeginDoc, EndDoc...). Bueno, aquí van unas líneas sencillas y comentadas, que no deberían fallar:
Espero haber sido claro, y que funcione. Saludos. |
La franja horaria es GMT +2. Ahora son las 10:28:45. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi