Ver Mensaje Individual
  #11  
Antiguo 28-10-2007
Avatar de ixMike
ixMike ixMike is offline
Miembro
 
Registrado: feb 2004
Posts: 1.151
Reputación: 22
ixMike Va por buen camino
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:

Código Delphi [-]

uses Printers;

{...}

procedure TfrmMain.mImprimirClick(Sender: TObject);
var
Impresona: TextFile;
n: integer;
begin
AssignPrn(Impresora); //Asigna el archivo de texto Impresora a la impresora por defecto
Rewrite(Impresora); //Abre el archivo para escribir, en este caso imprimir
for n:=0 to ListBox1.Items.Count -1 do //para cada item del ListBox
  WriteLn(Impresora, ListBox.Items[n]); //imprime la línea
CloseFile(Impresora); //Cierra el archivo
end;

Espero haber sido claro, y que funcione.

Saludos.
Responder Con Cita