0

经过很长时间的尝试....决定寻求帮助。

我正在尝试阅读发送到 Delphi 中的 Tmemo 的最后一行。我正在将代码行一一发送给开发人员。登上开发。board 每次都需要发送不同的代码行。我的最终目标是读回开发人员的最后一行。板送回。

例如

设置 ATT = 7 --->> \sent to dev. 木板

开发。董事会答复

OK <----- \ 从开发者那里收到。木板

发送下一行代码。

或者

再次发送“set 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;

节目信息仅供我自己参考……我知道它会将接收到的数据反弹回来,仅供参考。

奇怪的是它有时会起作用,而且那一行。Count 有时也会退回信件,所以我认为我的做法完全错误......

4

1 回答 1

6

您正在阅读结尾MemoRxData.Lines,因为它是从零开始的:

ll2 := MemoRxData.Lines.Count - 1;

ComPort1.WriteStr(MemoRxData.Lines[ll2] + #13#10;

(顺便说一句,你的变量名很糟糕。ll2读起来简直太可怕了。你应该使用有意义的、易于阅读的变量名,而不是这样可怕的快捷方式。)

于 2014-11-07T23:35:26.507 回答