Как программно прокрутить Memo?
Материал из DRKB
Как програмно прокрутить Memo?[править | править код]
Этот пример прокручивает на одну строку вниз.
memo1.Perform(WM_VScroll, SB_LINEDOWN, 0);
Возможны так же следующие опции:
- SB_BOTTOM
- SB_ENDSCROLL
- SB_LINEDOWN
- SB_LINEUP
- SB_PAGEDOWN
- SB_PAGEUP
- SB_THUMBPOSITION
- SB_THUMBTRACK
- SB_TOP
TComboBox, TListBox, TRichEdit и т.п можно прокрутить подобным образом
Source: Взято с Vingrad.ru http://forum.vingrad.ru
ID: 00545
В поле ввода вводите на какую строку нужно сойти, и по нажатию на кнопку эта строка будет попадать о зону видимости:
procedure TForm1.Button1Click(Sender: TObject);
var
line: integer;
begin
line := StrToIntDef(Edit1.Text, 1);
Memo1.SelStart := Memo1.Perform(EM_LINEINDEX, line, 0);
Memo1.Perform(EM_SCROLLCARET, 0, 0);
end;
Source: http://delphiworld.narod.ru/
ID: 00993
var
ScrollMessage: TWMVScroll;
begin
ScrollMessage.Msg := WM_VScroll;
for i := Memo1.Lines.Count downto 0 do
begin
ScrollMessage.ScrollCode := sb_LineUp;
ScrollMessage.Pos := 0;
Memo1.Dispatch(ScrollMessage);
end;
end;
Source: http://delphiworld.narod.ru/
ID: 01008