我正在使用 TMemo 保存从串行端口接收到的字符以供查看。当他们到达时我正在做:
Memo1.Text := Memo1.Text + sReceivedChars;
这工作正常,但我认为它效率相当低,必须在连接我的几个字符然后将其写回之前获取现有文本。我真的很想要一个“SendChars()”函数或类似的函数。有没有更好的方法来简单地在现有文本的末尾添加一些字符?
最佳答案
我不知道你是否认为值得,但你可以这样做:
procedure TForm1.Button1Click(Sender: TObject);
var
index: Integer;
NewText: string;
begin
NewText := 'Append This';
index := GetWindowTextLength (Memo1.Handle);
SendMessage(Memo1.Handle, EM_SETSEL, index, index);
SendMessage (Memo1.Handle, EM_REPLACESEL, 0, Integer(@NewText[1]));
end;
关于delphi - 有没有更好的方法向 TMemo 添加一些字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3580163/