大家有做过银行密码打印程序吗?就是去银行开户时银行给你打印密码时的那种,他们用的是针打,我公司没有,密码是一个一个用户打印的,刚打印第一个用户时,密码打印位置正确,打印第二个用户时,开始打印的位置距第一用用户位置太远,怎幺解决,请高手回答。
解决方案 »
- 您使用delphi 这样引用过单元吗?
- delphi 实现WINDOWS 超级终端功能
- 紧急问题:使用SetLength()函数,其中申请的空间超过超个1亿个字符。出现内存错误,求紧急解决方法。多谢
- mp3的编码算法哪里能找到?
- 有没有驱动扫描仪(USB接口)进行扫描的例子?
- 初学者,连接数据库的问题
- 那位知道动态创建多线程的方法,比如象flashget一样,用户指定几个线程下载就同时执行几个线程?
- onsettext问题欢迎讨论,,,100分!!!!
- 请问谁机子上有msdn呀?我想要上面的字符映射表~
- 盗版delphi6 请大家发表意见
- 寻求delphi方面的高手合作
- 求能在WIN2K下锁住WIN键的方法
uses CommDlg; {$IFNDEF WIN32}
const MAX_PATH = 144;
{$ENDIF} procedure TForm1.Button1Click(Sender: TObject);
var
Pd : TPrintDlg;
DocInfo: TDocInfo;
begin
FillChar(Pd, sizeof(Pd), #0);
Pd.lStructSize := sizeof(Pd);
Pd.hWndOwner := Form1.Handle;
Pd.Flags := PD_RETURNDC;
if PrintDlg(pd) then begin
FillChar(DocInfo, sizeof(DocInfo), #0);
DocInfo.cbSize := SizeOf(DocInfo);
GetMem(DocInfo.lpszDocName, 32);
GetMem(DocInfo.lpszOutput, MAX_PATH);
lStrCpy(DocInfo.lpszDocName, 'My Document');
{Add this line to print to a file }
lStrCpy(DocInfo.lpszOutput, 'C:\Download\Test.doc');
StartDoc(Pd.hDc, DocInfo);
StartPage(Pd.hDc);
TextOut(Pd.hDc, 100, 100, 'Page 1', 6);
EndPage(Pd.hDc);
StartPage(Pd.hDc);
TextOut(Pd.hDc, 100, 100, 'Page 2', 6);
EndPage(Pd.hDc);
EndDoc(Pd.hDc);
FreeMem(DocInfo.lpszDocName, 32);
FreeMem(DocInfo.lpszOutput, MAX_PATH);
end;
end;