Scrolling RichEdit without it having focus

筅森魡賤 提交于 2019-12-05 08:01:53

This is what I do:

SendMessage(RichEdit.Handle, WM_VSCROLL, SB_BOTTOM, 0);

See this blog post by François Gaillard: richedit-on-scrolling-strike.

Appearently a bug, here is the workaround solution :

procedure ScrollToEnd(ARichEdit: TRichEdit);
var
  isSelectionHidden: Boolean;
begin
  with ARichEdit do
  begin
    SelStart := Perform( EM_LINEINDEX, Lines.Count, 0);//Set caret at end
    isSelectionHidden := HideSelection;
    try
      HideSelection := False;
      Perform( EM_SCROLLCARET, 0, 0);  // Scroll to caret
    finally
      HideSelection := isSelectionHidden;
    end;
  end;
end;
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!