RSS订阅 | 匿名投稿
您的位置:网站首页 > 打印 > 正文

Delphi打印各类文档

作者:admin 来源: 日期:2012/12/28 15:29:34 人气: 标签:

ShellExecute(Handle, 'print', PChar('c:/document.doc'), nil, nil, SW_HIDE) ;
 
  1. Drop a TComboBox on a form. Name it "cboPrinter". Set Style to csDropDownLidt
  2. Put the next two lines in the form's OnCreate even handler:
     //have available printers in the combo box  cboPrinter.Items.Assign(printer.Printers);  //pre-select the default / active printer  cboPrinter.ItemIndex := printer.PrinterIndex;  
Now, here's the function you can use to print any document type to a specified printer:
 uses shellapi, printers;  procedure PrintDocument(const documentToPrint : string) ; var  printCommand : string; printerInfo : string; Device, Driver, Port: array[0..255] of Char; hDeviceMode: THandle; begin   if Printer.PrinterIndex = cboPrinter.ItemIndex then  begin  printCommand := 'print'; printerInfo := ''; end else begin  printCommand := 'printto'; Printer.PrinterIndex := cboPrinter.ItemIndex; Printer.GetPrinter(Device, Driver, Port, hDeviceMode) ; printerInfo := Format('"%s" "%s" "%s"', [Device, Driver, Port]) ; end;  ShellExecute(Application.Handle, PChar(printCommand), PChar(documentToPrint), PChar(printerInfo), nil, SW_HIDE) ; end; 

读完这篇文章后,您心情如何?
0
0
0
0
0
0
0
0
本文网址: