动态自定义纸张大小的问题,请高手支持我打印机是Epson LQ-300k+(但我装的是LQ-1500的驱动程序,可正常使用),已经设置了一个纸张为”PLabel”,宽为230mm,长度为32mm,但现在我想通过程序动态设置这个长度,请问我要怎样写这个程序呢?还有,我不明白有高手程序里的TFormInfor1是怎样来的,我照例弄了一下,FormInfo:TFormInfo1;出错。谢谢大家支持!
附高手的代碼://增加规格自定义纸张
//PaperName: 自定义纸张名称
//PaperWidth: 纸张的宽度,以0.1mm为单位
//PaperLength: 纸张的高度,以0.1mm为单位
procedure TDM.AddCustomPaper(const PaperName: string; PaperWidth, PaperLength:integer);
var
PrintDevice, PrintDriver, PrintPort : array[0..255] of Char;
hDMode : THandle;
hPrinter : THandle;
FormInfo : TFormInfo1;
begin
Printer.GetPrinter(PrintDevice, PrintDriver, PrintPort, hDMode);
OpenPrinter(PrintDevice, hPrinter, nil);
......
附高手的代碼://增加规格自定义纸张
//PaperName: 自定义纸张名称
//PaperWidth: 纸张的宽度,以0.1mm为单位
//PaperLength: 纸张的高度,以0.1mm为单位
procedure TDM.AddCustomPaper(const PaperName: string; PaperWidth, PaperLength:integer);
var
PrintDevice, PrintDriver, PrintPort : array[0..255] of Char;
hDMode : THandle;
hPrinter : THandle;
FormInfo : TFormInfo1;
begin
Printer.GetPrinter(PrintDevice, PrintDriver, PrintPort, hDMode);
OpenPrinter(PrintDevice, hPrinter, nil);
......
解决方案 »
- DBGridEh 的Checkboxes 选择记录问题?
- 执行存储过程总是报“超时已过期”的错误、并且 AdOConnection.ConnectionTimeOut 设置到了120
- ImageList图标变黑块
- 记录类型变量如何赋值给变体?
- 求一个 Delphi算法:实现 N 位数(N<10)的任意排列组合
- 高分在线求教,用什么API可以调用windows的域服务器验证用户名密码
- 这样的问题,要怎么解决........要多少分由你来说???????急着救命.....
- 如何通过在编辑框输入非法字符使WINDOWS系统提示该程序执行非法操作?
- delphi7.0中怎么找不到报表打印的控件了呢?
- 为什么存储过程中不能带参数?
- 更新记录时为什么报错
- ODBC+ADOQuery1,以“时间”为条件对数据库中的信息进行查找,为何无法显示数据(用到DateTimePicker控件)
begin
Flags := FORM_USER;
pName := PChar(PaperName);
Size.cx := PaperWidth*100;
Size.cy := PaperLength*100;
ImageableArea.Left := 0;
ImageableArea.Top := 0;
ImageableArea.Right := PaperWidth*100;
ImageableArea.Bottom := PaperLength*100;
end;Flags ,pName等等是什麼東東啊?