Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.12.31;
Скачать: CL | DM;

Вниз

Вопрос по синхронизации прокрутки двух KolListBox   Найти похожие ветки 

 
LAutour   (2006-03-23 10:43) [0]

Как синхронизировать прокрутку в двух ListBox (KolListBox).
Поиски в интернете не блещут разнообразием примеров по подобному вопросу.


 
ECM ©   (2006-03-23 15:06) [1]

А поиск по MSDN не пробовали?  :))

Я так понимаю что интересует вертикальная прокрутка...?

Например так (если пользоваться встроенной в ListBox полосой прокрутки):

procedure TForm1.ListBox2Scroll(Sender: PControl; Bar: TScrollerBar;
 ScrollCmd, ThumbPos: Cardinal);
begin
 ListBox1.Perform(LB_SETTOPINDEX,ListBox2.Perform(LB_GETTOPINDEX,0,0),0);
end;

procedure TForm1.ListBox1Scroll(Sender: PControl; Bar: TScrollerBar;
 ScrollCmd, ThumbPos: Cardinal);
begin
 ListBox2.Perform(LB_SETTOPINDEX,ListBox1.Perform(LB_GETTOPINDEX,0,0),0);
end;


Почитайте в MSDN о LB_SETTOPINDEX, LB_GETTOPINDEX

З.Ы. Этот способ ИМХО не очень "красиво" выглядит. Две полосы прокрутки (у каждого списка своя). Список который прокручивается программно визуально отстает (видно как сначала прокручивается один - потом его догоняет второй).
"Красивее" сл. решение - выключаем в обоих списках собственную полосу прокрутки:
loNoHideScroll = TRUE и  ListBoxN.Style := ListBoxN.Style and (not WS_VSCROLL);
Делаем отдельный общий Скроллбокс и для него:

procedure TForm1.ScrollBar1SBScroll(Sender: PControl; Cmd: Word);
begin
 ListBox2.Perform(LB_SETTOPINDEX,ScrollBar1.SBPosition,0);
 ListBox1.Perform(LB_SETTOPINDEX,ScrollBar1.SBPosition,0);
end;


 
LAutour   (2006-03-24 06:48) [2]

Спасибо.



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

Текущий архив: 2006.12.31;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.05 c
2-1165584300
TrainerOfDolphins
2006-12-08 16:25
2006.12.31
Вызвать обработчик, имя которого неизвестно в дизайн-тайме


15-1165559328
Slider007
2006-12-08 09:28
2006.12.31
Не связанные друг с другом 2 вопроса ;) (видео, клиент форума)


15-1165953241
Kolan
2006-12-12 22:54
2006.12.31
Временно обзавелся 2м монитором.


2-1165818559
Сергей Ю
2006-12-11 09:29
2006.12.31
Работа с socket-ами и sql в одном приложении=многопоточность?


2-1165673458
Pa5ha
2006-12-09 17:10
2006.12.31
Генератор управлялки к бд