请大家看我的原码,我打出来后,条码内容变,其它字段内容却不变.烦请各位大侠指点指点! //按查询结果打印条码 try if radiobutton2.Checked then begin S:=TSTRINGLIST.CREATE; b:=TSTRINGLIST.CREATE; p:=1; ks:=0; gap:=0; q:=0; jbzl.Query2.First; wendu:=strtoint(edit3.Text); shopname:=edit2.Text; A_CreatePrn(1,'打印查询.txt');//建立打印 while not jbzl.Query2.Eof do begin s.Add(jbzl.Query2.fieldbyname('spmc').AsString); b.Add(jbzl.Query2.fieldbyname('xj').AsString); tm:=jbzl.query2.Fields[1].AsString; if((p+2)mod 3=0)then gap:=0; if((p+1)mod 3=0)then gap:=s1; if p mod 3=0 then gap:=s2; A_Set_Darkness(wendu); //设置打印温度 A_Set_ProcessDlg(0);//为0时关闭打印进度框 if ck2.Checked then A_Prn_Barcode(x2+gap, y2, 1, 'E', z2, k2, tmgao, 'b',1,pchar(tm)); if ck3.Checked then A_Prn_Text_TrueType(x3+gap, y3, k3,'name', 1, 400, 0, 0, 0, pchar('AA'), pchar('名称:'+s.Strings[q]),1); if ck4.Checked then A_Prn_Text_TrueType(x4+gap, y4, k4, 'price', 1, 400, 0, 0, 0, pchar('AB'), pchar('销价:¥'+b.strings[q]),1); if ck1.Checked then A_Prn_Text_TrueType(x1+gap, y1, k1, 'shopname', 1, 400, 0, 0, 0, pchar('Ac'), pchar(shopname),1); q:=q+1; p:=p+1; ks:=ks+1; if ks=3 then begin A_Print_Out(1,1,i,1);A_ClosePrn;A_CreatePrn(1,'打印查询.txt'); ks:=0;end;//输出三列内容时开始打印,并新建打印任务 jbzl.Query2.Next; end; if ks mod 3<>0 then A_Print_Out(1,1,i,1); A_ClosePrn; end; showmessage('打印完成!'); except showmessage('请检查打印机是否接上!'); end; end;
//按查询结果打印条码
try
if radiobutton2.Checked then
begin
S:=TSTRINGLIST.CREATE; b:=TSTRINGLIST.CREATE;
p:=1;
ks:=0;
gap:=0;
q:=0;
jbzl.Query2.First;
wendu:=strtoint(edit3.Text);
shopname:=edit2.Text;
A_CreatePrn(1,'打印查询.txt');//建立打印
while not jbzl.Query2.Eof do
begin
s.Add(jbzl.Query2.fieldbyname('spmc').AsString);
b.Add(jbzl.Query2.fieldbyname('xj').AsString);
tm:=jbzl.query2.Fields[1].AsString;
if((p+2)mod 3=0)then gap:=0;
if((p+1)mod 3=0)then gap:=s1;
if p mod 3=0 then gap:=s2;
A_Set_Darkness(wendu); //设置打印温度
A_Set_ProcessDlg(0);//为0时关闭打印进度框
if ck2.Checked then A_Prn_Barcode(x2+gap, y2, 1, 'E', z2, k2, tmgao, 'b',1,pchar(tm));
if ck3.Checked then A_Prn_Text_TrueType(x3+gap, y3, k3,'name', 1, 400, 0, 0, 0, pchar('AA'), pchar('名称:'+s.Strings[q]),1);
if ck4.Checked then A_Prn_Text_TrueType(x4+gap, y4, k4, 'price', 1, 400, 0, 0, 0, pchar('AB'), pchar('销价:¥'+b.strings[q]),1);
if ck1.Checked then A_Prn_Text_TrueType(x1+gap, y1, k1, 'shopname', 1, 400, 0, 0, 0, pchar('Ac'), pchar(shopname),1);
q:=q+1;
p:=p+1;
ks:=ks+1;
if ks=3 then begin A_Print_Out(1,1,i,1);A_ClosePrn;A_CreatePrn(1,'打印查询.txt'); ks:=0;end;//输出三列内容时开始打印,并新建打印任务
jbzl.Query2.Next;
end;
if ks mod 3<>0 then A_Print_Out(1,1,i,1);
A_ClosePrn;
end;
showmessage('打印完成!');
except showmessage('请检查打印机是否接上!'); end;
end;