当前位置 : 主页 > 编程语言 > delphi >

Delphi COM串口打印演示

来源:互联网 收集:自由互联 发布时间:2021-06-23
unit Unit1; //Download by http://www.NewXing.com interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, RzPanel, StdCtrls, RzCmboBx, RzButton, ComCtrls, RzEdit, OleCtrls, MSCommLib_TLB;

unit Unit1;
//Download by http://www.NewXing.com
interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, RzPanel, StdCtrls, RzCmboBx, RzButton, ComCtrls,
RzEdit, OleCtrls, MSCommLib_TLB;

type
TForm1 = class(TForm)
mscm1: TMSComm;
edt1: TRzRichEdit;
rzbtbtn1: TRzBitBtn;
cbb1: TRzComboBox;
rzpnl1: TRzPanel;
rzbtbtn2: TRzBitBtn;
rzbtbtn3: TRzBitBtn;
edt2: TEdit;
procedure mscm1Comm(Sender: TObject);
procedure rzbtbtn1Click(Sender: TObject);
procedure rzbtbtn2Click(Sender: TObject);
procedure rzbtbtn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.mscm1Comm(Sender: TObject);
var
n : Integer;
rx :Integer;
recstr : Variant;
t : string;
i : Integer;
tr : Integer;
strintext :string;
begin
recstr:= Copy(mscm1.Input,1,2);
strintext:= recstr ;
edt2.Text:=Trim(strintext);
// if mscm1.CommEvent =comEventBreak then
// begin
// edt1.Text:=‘PRINT‘;
// end;
{
if mscm1.CommEvent = ComEventRxParity then
tr:=1;
if mscm1.CommEvent = 2 then
begin
n:=mscm1.InBufferCount;
inc(rx,n);
recstr :=mscm1.Input;
if mscm1.InputMode = 0 then
begin
t:=‘‘;
t:= recstr;
if t<>‘‘ then
begin
for i:= 0 to n do
begin
if t[i]=‘?‘ then
begin
tr:=1
end
else
if (tr=0) then
begin
strintext:=strintext+‘ ‘ + IntToHex(Byte(t[i]),2)
end
else
begin
strintext:= strintext+‘ ‘ + IntToHex(Byte(t[i])+126,2) ;
tr:=0;
end;
end;
end;
end;
end; }
end;

procedure TForm1.rzbtbtn1Click(Sender: TObject);
begin
if mscm1.PortOpen then
begin
mscm1.PortOpen:=False;
end;
try
mscm1.CommPort:=1;
mscm1.Settings:=‘9600,N,8,1‘;
mscm1.InputLen:=0; // default 0
mscm1.RThreshold:=1;
mscm1.InputMode:=comInputModeText;
mscm1.InputLen:=0;
mscm1.PortOpen:=True;
except
mscm1.PortOpen:=False;
end;
// end
end;

procedure TForm1.rzbtbtn2Click(Sender: TObject);
begin
Application.Terminate;
end;

procedure TForm1.rzbtbtn3Click(Sender: TObject);
begin
if mscm1.PortOpen = True then
mscm1.PortOpen := False;
end;

end.

网友评论