Scroll and show the last line of Memo:
Memo1.SelStart := Memo1.GetTextLen;
SendMessage(Memo1.Handle, WM_VSCROLL, SB_BOTTOM, 0);
Scroll and show the last line of RichEdit:
RichEdit1.SelStart := RichEdit1.GetTextLen;
SendMessage(RichEdit1.Handle, WM_VSCROLL, SB_BOTTOM, 0);
Delphi: TEdit Go to end
Delphi: TSynEdit Go to end
Go to beginning / Go to top
RichEdit1.SelStart := 0;
SendMessage(RichEdit1.Handle, WM_VSCROLL, SB_TOP, 0);