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

Синхронизировать скроллинг двух TRichEdit   Найти похожие ветки 

 
misha_gr   (2008-03-04 16:23) [0]

Как можно синхронизировать скроллинг двух TRichEdit"ов? Наподобие того, как это делается в Total Commander при сравнении двух файлов по содержимому?


 
misha_gr   (2008-03-04 19:42) [1]

Ползунки бегают, но вот содержимое не скроллится...
Чего не хватает?

procedure TFrameCompare.AdjustRichEdits(Sender : TObject);
var ThumbRes : longint; R : TRect; SI_Vert, SI_Horz: TScrollInfo;
begin
 if Sender = RichEdit1 then
 begin

   SI_Vert.cbSize := SizeOf(SI_Vert);
   SI_Vert.fMask  := SIF_ALL;
   GetScrollInfo(RichEdit1.Handle, SB_Vert, SI_Vert);

   SI_Horz.cbSize := SizeOf(SI_Horz);
   SI_Horz.fMask  := SIF_ALL;
   GetScrollInfo(RichEdit1.Handle, SB_HORZ, SI_Horz);

   AdjustEdit(SI_Vert, SI_Horz, RichEdit2);

 end
 else if Sender = RichEdit2 then
 begin

   SI_Vert.cbSize := SizeOf(SI_Vert);
   SI_Vert.fMask  := SIF_ALL;
   GetScrollInfo(RichEdit2.Handle, SB_Vert, SI_Vert);

   SI_Horz.cbSize := SizeOf(SI_Horz);
   SI_Horz.fMask  := SIF_ALL;
   GetScrollInfo(RichEdit2.Handle, SB_HORZ, SI_Horz);

   AdjustEdit(SI_Vert, SI_Horz, RichEdit1);

 end
end;

procedure TFrameCompare.AdjustEdit(const SI_Vert, SI_Horz: TScrollInfo; AControl : TWinControl);
var bRes : integer;
begin
 FAdjustment := true;
 try
   bRes := SetScrollInfo(AControl.Handle, SB_Vert, SI_Vert, true);
   bRes := SetScrollInfo(AControl.Handle, SB_Horz, SI_Horz, true);
   AControl.Refresh;
 finally
   FAdjustment := false;
 end;
end;



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

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



Память: 0.45 MB
Время: 0.01 c
15-1224835973
Рамиль
2008-10-24 12:12
2008.12.21
ПО для прокладки маршрутов


3-1212045186
Аноним
2008-05-29 11:13
2008.12.21
Как завершить Хранимую процедуру?


2-1226565759
Нов_и_чок
2008-11-13 11:42
2008.12.21
RegisterServicesProcess in User32.dll


2-1226422654
Res
2008-11-11 19:57
2008.12.21
TBitmap


2-1226599478
vegarulez
2008-11-13 21:04
2008.12.21
Подскажите как сделать картинку на канве TButton(VCL)




   Наверх