16,748
社区成员
发帖
与我相关
我的任务
分享
procedure TForm26.Button2Click(Sender: TObject);
var
mystr: string;
begin
{
3. ESC @初始化命令
ASCII码 格式:ESC @
十进制 格式:[027][064]
十六进制 格式:[1BH][40H]
说明:恢复到上电开机时的状态。
4. CLR清屏命令
ASCII码 格式:CLR
十进制 格式:[012]
十六进制 格式:[0CH]
说明:清除屏幕上的所有字符。
5. ESC Q A d1d2d3…dn CR送显示数据命令
ASCII码 格式:ESC Q A d1d2d3…dn CR
十进制格式:[027][081][065]d1d2d3…dn[013] 48<=dn<=57或dn=45或dn=46
十六进制 格式:[1BH][51H][41H]d1d2d3…dn[0DH]
30H<=dn<=39H或dn=2DH或dn=2EH
说明:a.执行该命令时,会以覆盖模式送要显示的数据,这样就不需要在每次送显
示数据前都去执行CAN清除光标行命令了。
b.显示的d1…dn没有小数点时1<=n<=8。
c.显示的d1…dn有小数点时1<=n<=15(8位数值+7位小数点)。
d.显示的内容可用CLR或CAN命令清除。
6. ESC s n设置“单价”、“总计”、“收款”、“找零”字符显示状态命令
ASCII码 格式:ESC s n 0<=n<=4
十进制 格式:[027][115] n 48<=n<=52
十六进制 格式:[1BH][73H] n 30H<=n<=34H
说明:(1)当 n=0,四种灯 全暗。
(2)当 n=1,“单价”灯 亮,其它三种 暗。
(3)当 n=2,“总计”灯 亮,其它三种 暗。
(4)当 n=3,“收款”灯 亮。其它三种 暗。
(5)当 n=4,“找零”灯 亮。其它三种 暗。
// com_send(Pchar(PDStr),Length(PDStr))
}
//显示合计
myStr := Chr(27) + Chr(115) + '2';
try
self.CnRS2322.WriteCommData(pchar(mystr), Length(myStr));
sleep(30);
except
end;
//显示金额
mystr := floattostr(self.DBGridEh1.Columns[10].Footers[0].SumValue);
if trim(mystr) = trim(self.Edit2.Text) then exit;
self.Edit2.Text := trim(mystr);
//if self.DBGridEh1.Columns[10].Footers[0].SumValue=0 then mystr:='';
//mystr:=' '+trim(mystr);
//mystr:=rightstr(mystr,8);
myStr := Chr(27) + Chr(81) + Chr(65) + mystr + Chr(13);
try
self.CnRS2322.WriteCommData(pchar(mystr), Length(myStr));
sleep(30);
except
end;
end;
以前项目中的应用,可供参考一下。。。。