经过很长一段时间后......决定寻求帮助。
我试图读取发送给Delphi中的Tmemo的最后一行。我将代码行逐个发送给开发人员。登上开发者。电路板每次都需要发送不同的代码行。我的最终目标是回读dev的最后一行。董事会发回来。
E.G
设置ATT = 7 --->> \发送到开发。董事会
开发。董事会回复
O.K< ----- \从dev收到。董事会
发送下一行代码。
或者
E.R.R
发送"设置att = 7"再次命令。
到目前为止,我已经掌握了大部分需要工作的东西。我只是不能让Delphi阅读tmemo的最后一行。
我试过了
procedure TReaderProgrammer.Button3Click(Sender: TObject );
var
RxData : string;
LL : string;
ll2: system.integer;
begin
LL:= memorxdata.lines.count.ToHexString;
LL2:=memorxdata.Lines.Count;
if ComPort1.Connected then
begin
showmessage(ll);
ComPort1.WriteStr(memorxdata.Lines[ll2]+#13+#10);
end;
end;
showmessage只供我自己参考...我知道它会再次收回它收到的数据,仅供参考。
奇怪的是,它有时会起作用,而那条线。伯爵有时会反弹回信,所以我想我完全错误的方式......
答案 0 :(得分:6)
您正在阅读MemoRxData.Lines
的结尾,因为它是从零开始的:
ll2 := MemoRxData.Lines.Count - 1;
ComPort1.WriteStr(MemoRxData.Lines[ll2] + #13#10;
(你的变量名很糟糕,顺便说一下。ll2
只是读起来很可怕。你应该使用有意义的,易于阅读的变量名来代替这种糟糕的捷径。)