Delphi中的TMemo滚动

时间:2016-10-05 23:02:22

标签: delphi scroll tmemo

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

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

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

...谢谢

2 个答案:

答案 0 :(得分:4)

将备忘录的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;

答案 1 :(得分:3)

您可以对行集合使用开始/结束更新:

memo.Lines.BeginUpdate;
try
  memo.Lines.Add('test');
finally
  memo.Lines.EndUpdate;
end;