Вниз
Скачать: CL | DM;

Параллельная прокрутка двух TMemo   Найти похожие ветки 

← →
Байрам   (2006-04-20 14:40) [0]

Есть два Memo(!),
текст находящийся в них неодинаковый,
зато одинаковое количество строк.

Как лучше сделать позиционировать текст во втором мемо
относительно прокрутки первого?


← →
Мефисто   (2006-04-20 15:58) [1]

FAQ, статьи, поиск еще. Гдето это уже было.


← →
Zeqfreed ©   (2006-04-20 16:26) [2]

. . .

const
 WM_SCROLLNOTIFY = WM_USER + 234;

type
 TScrollMemo = class(TMemo)
 private
  procedure WMVScroll(var Msg : TMessage); message WM_VSCROLL;
 end;

 TMemo = class(TScrollMemo);

 TForm1 = class(TForm)
   Memo1: TMemo;
   Memo2: TMemo;
 private
  procedure WMScrollNotify(var Msg : TMessage); message WM_SCROLLNOTIFY;
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

{ TScrollMemo }

procedure TScrollMemo.WMVScroll(var Msg: TMessage);
begin
 inherited;
 if (Msg.LParam <> -1) then
  SendMessage(Parent.Handle, WM_SCROLLNOTIFY, Msg.WParam, Handle);
end;

{ TForm1 }

procedure TForm1.WMScrollNotify(var Msg: TMessage);
var
 i : Integer;
begin
 for i := 0 to ComponentCount - 1 do begin
  if (Components[i] is TMemo) then
   with (Components[i] as TMemo) do begin
    if (Handle <> Msg.LParam) then
     SendMessage(Handle, WM_VSCROLL, Msg.WParam, -1);
   end;
 end;
end;

. . .


← →
Байрам   (2006-04-20 17:12) [3]

Спасибо



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
11-1125465671
Windows
2005-08-31 09:21
2006.05.07
Системные горячие влавиши в КОЛ и МСК


15-1144826480
syte_ser78
2006-04-12 11:21
2006.05.07
Ваши юношеские заблуждения (компьютерные)


2-1145362556
Std
2006-04-18 16:15
2006.05.07
Работа с несколькими потоками


2-1145339802
Ярослав
2006-04-18 09:56
2006.05.07
Помогите, не знаю в чем дело


15-1144856995
ArtemESC
2006-04-12 19:49
2006.05.07
Настольгия...




   Наверх