Delphi打印各类文档


本文整理自网络,侵删。

 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; 

相关阅读 >>

Delphi 数字签名添加器源码

Delphi 如何把类中的方法做参数

Delphi中设置条件断点

Delphi 暴力搜索api

Delphi和c++指针详解

Delphi utf8乱码问题

Delphi webservices传base64字串

Delphi link() 精简打开网址

Delphi 匹配中文的正则表达式

Delphi savetextfiledialog 用法

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...