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 动态数组的释放

Delphi-idhttp-utf-8编码乱码解决

Delphi 网上获取北京时间idhttpserver and idhttp 使用 encoding utf8

Delphi debug和release区别

Delphi 获取鼠标与键盘空闲时间

Delphi xe5 android 调用手机震动(通过jobject测试是否支持震动)

Delphi 获取文件夹时间

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



打赏

取消

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

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

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

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

评论

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