TPrinter控制票据打印机.doc

上传人:scccc 文档编号:12016209 上传时间:2021-12-01 格式:DOC 页数:3 大小:18KB
返回 下载 相关 举报
TPrinter控制票据打印机.doc_第1页
第1页 / 共3页
TPrinter控制票据打印机.doc_第2页
第2页 / 共3页
TPrinter控制票据打印机.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《TPrinter控制票据打印机.doc》由会员分享,可在线阅读,更多相关《TPrinter控制票据打印机.doc(3页珍藏版)》请在三一文库上搜索。

1、TPrinter 控制票據打印機TPrinter 类是 Delphi 对 Windows 打印处理系统的封 装,它能够帮助程序员在开发打印程序时尽可能地减少工作 量。在程序中使用 TPrinter ,只要在单元的 Use 子句后面添 加 Printers 即可。当前打印机的 DevMode 结构的句柄可以 通过调用 Tprinter 类中的 GetPrinter 方法来获取。当程序获 得 DevMode 结构的句柄后, 就调用 GlobalLock 函数来得到 指向该结构的指针,随后可对结构中的某些成员进行修改。 下面就举一个例子来说明这一问题:假设当前打印机的默认 纸张尺寸是A3纸,现在要打

2、印长度为 114mm、宽度为 190mm 的纸张。为了简单起见,我们只在 Form1 上放置一 个 Button1 按钮, 增加一个 OnClick 事件, 在 Use 子句后添 加 Printers 。程序的代码如下:Procedure TForm1.Button1Click(Sender: TObject); varDevice : array0.cchDeviceName 1 of Char;Driver : array0.(MAX_PATH 1) of Char;Port : array0.32of Char;hDMode : THandle;pDMode : PDevMode;beg

3、inPrinter.GetPrinter(Device,Driver,Port,hDMode);/ 获取打印机 DevMode 结构的句柄值, 存放在 hDMode 中if hDMode < > 0 then beginpDMode := GlobalLock(hDMode);/ 获取指向打印机 DevMode 结构的 / 指针 if pDMode < > nil then begin pDMode'dmPaperSize := 256;/ 如果要将当前打印机纸张变为自定义dmPaperSize 必须设置成 256 pDMode&

4、#39;dmPaperLength := 1140; pDMode'dmPaperWidth := 1900;pDMode'dmFields := pDMode'dmFields orDM_PAPERSIZE;pDModeA.dmFields :=pDModeA.dmFields or DM_PAPERLENGTH;pDModeA.dmFields := pDModeA.dmFields or DM_PAPERWIDTH; 以上三条语句是对相应的 dmFields 成员进行置位。 ResetDC(Printer.Handle,pDModeA);/ 设置打印机设备环境句柄的值GlobalUnlock(hDMode);end;end; 下面的代码是为了测试打印机是否按 190 114 纸张大小来打印 with Printer do beginBeginDoc;Canvas.TextOut(10,10,'Hello, My Friend!'); EndDoc;end;end;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1