delphi7 多个Edit.text的for处理
想将串口comm1接收来的十六进制,按顺序放到Edit1.text到Edit30.text中,每个Edit放一个字节!!!如何用for处理???!!procedureTF...
想将串口comm1接收来的十六进制,按顺序放到Edit1.text到Edit30.text中,每个Edit放一个字节!!!
如何用for处理???!!
procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
intHex : array[0..4096] of Byte;
ArraySize,i : DWORD;
Count : DWORD;
viewstring,tmpStr : string;
pStr : PChar;
begin
move(buffer^,pchar(@intHex)^,bufferlength);
for i:=0 to bufferlength-1 do
begin
viewstring:= inttohex(intHex[i],2)+'';
if i:=0 then Edit1.text:= viewstring;
if i:=1 then Edit2.text:= viewstring;
if i:=2 then Edit3.text:= viewstring;
:
:
:
if i:=28 then Edit29.text:= viewstring;
if i:=29 then Edit30.text:= viewstring;
end;
我的这种方法太麻烦,有没有类似C语言,直接
for i:=0 to bufferlength-1 do
begin
Edit[i]:= viewstring;
end;(我这样写好些编译不过!!!!!)
要是想从Edit4开始放的话呢??? 展开
如何用for处理???!!
procedure TForm1.Comm1ReceiveData(Sender: TObject; Buffer: Pointer;
BufferLength: Word);
var
intHex : array[0..4096] of Byte;
ArraySize,i : DWORD;
Count : DWORD;
viewstring,tmpStr : string;
pStr : PChar;
begin
move(buffer^,pchar(@intHex)^,bufferlength);
for i:=0 to bufferlength-1 do
begin
viewstring:= inttohex(intHex[i],2)+'';
if i:=0 then Edit1.text:= viewstring;
if i:=1 then Edit2.text:= viewstring;
if i:=2 then Edit3.text:= viewstring;
:
:
:
if i:=28 then Edit29.text:= viewstring;
if i:=29 then Edit30.text:= viewstring;
end;
我的这种方法太麻烦,有没有类似C语言,直接
for i:=0 to bufferlength-1 do
begin
Edit[i]:= viewstring;
end;(我这样写好些编译不过!!!!!)
要是想从Edit4开始放的话呢??? 展开
2个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询