Author: Jonas Bilinkevicius
How to change the scrollbar position in a non-focused TMemo
Answer:
You'll have KeyPreview set true of course then:
1 2 procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
3 begin4 case Key of5 VK_Down: Memo1.Perform(Messages.EM_LINESCROLL, 0, 1);
6 VK_UP: Memo1.Perform(Messages.EM_LINESCROLL, 0, -1);
7 {and if HorzScrollbars are also used}8 VK_Left: Memo1.Perform(Messages.EM_LINESCROLL, -1, 0);
9 VK_Right: Memo1.Perform(Messages.EM_LINESCROLL, 1, 0);
10 end;
11 {But where is the focus when you are doing this? Do you want the keystroke passed12 elsewhere? If not then}13 Key := 0;
14 end;