阅读德尔福Tmemo中的最后一行

时间:2014-11-07 23:29:57

标签: delphi tmemo tcomport

经过很长一段时间后......决定寻求帮助。

我试图读取发送给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只供我自己参考...我知道它会再次收回它收到的数据,仅供参考。

奇怪的是,它有时会起作用,而那条线。伯爵有时会反弹回信,所以我想我完全错误的方式......

1 个答案:

答案 0 :(得分:6)

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

ll2 := MemoRxData.Lines.Count - 1;

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

(你的变量名很糟糕,顺便说一下。ll2只是读起来很可怕。你应该使用有意义的,易于阅读的变量名来代替这种糟糕的捷径。)