1

我正在使用:Memo1.Lines.Add(Text) 将文本行添加到 TMemo,这会导致 Memo1 滚动到底部。

有没有办法在我添加行时停止滚动,或者在我完成后强制它回到顶部?

我想要一个简单的解决方案...

谢谢...

4

2 回答 2

5

将备忘录的SelStart属性设置为 0,然后向备忘录发送EM_SCROLLCARET消息。

Memo1.Lines.BeginUpdate;
try
  Memo1.Lines.Add(...);
  ...
  Memo1.SelStart := 0;
  Memo1.SelLength := 0;
  Memo1.Perform(EM_SCROLLCARET, 0, 0);
finally
  Memo1.Lines.EndUpdate;
end;
于 2016-10-06T01:28:32.907 回答
3

您可以将开始/结束更新用于行集合:

memo.Lines.BeginUpdate;
try
  memo.Lines.Add('test');
finally
  memo.Lines.EndUpdate;
end;
于 2016-10-05T23:25:54.313 回答