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

Прокрутка ListBox   Найти похожие ветки 

← →
Ilg   (2003-07-17 11:15) [0]

Здравствуйте!
Скажите, как можно поймать момент прокрутки TListBox?
(Почему-то WM_VSCROLL посылается только при прокрутке мышью...
Но при движении по списку с помощью клавиатуры происходят какие-то другие события, хотя полоса прокрутки тоже перемещается...)
Как поймать этот момент?
Заранее, Большое спасибо!


← →
[lamer]Barmaglot ©   (2003-07-17 11:38) [1]

Как я понимаю ловить ручками. Если правильно помню - LBN_SELCHANGE.


← →
Skier ©   (2003-07-17 11:41) [2]

>Ilg (17.07.03 11:15)
А зачем ловить ? Какая цель ?


← →
Ilg   (2003-07-17 18:57) [3]

Я создаю компонент-наследник TListBox с текстурной заливкой фона... При возникновении вышеуказанных событий я перерисовываю ListBox. (Если этого не делать текстурный фон "уродуется".


← →
Skier ©   (2003-07-17 19:01) [4]

А CN_DRAWITEM не пробовал ?


← →
mrcat ©   (2003-07-17 19:03) [5]

OnDrawItem + перерисовывать ту часть фона, которую занимает Item?


← →
Толик ©   (2003-07-17 19:07) [6]

Ну зачем такие извраты?
Всё же гораздо проще: поймать LB_SETTOPINDEX и наступит счастье...


← →
Ilg   (2003-07-18 12:00) [7]

LB_SETTOPINDEX почему-то в этот момент не ловится :-(


← →
Толик ©   (2003-07-18 12:41) [8]

LB_SETTOPINDEX почему-то в этот момент не ловится

Правильно ли я понимаю, что используются стандартные возможности ListBox"а, заложенные в него MicroSoft"ом прокручиваться по нажатию на курсорные клавиши? Если это так, то тогда LB_SETTOPINDEX действительно не будет. (Я было решил, что раз это компонент-наследник, то вся обработка взята на себя и LB_SETTOPINDEX посылается)
Тогда надо ловить WM_KEYDOWN и WM_LBUTTONDOWN: насколько я понимаю, иначе никак.
Ну или, если рисовать руками, то ловить события перерисовки.



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

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



Память: 0.46 MB
Время: 0.015 c
3-100600
Soft
2003-07-08 15:28
2003.07.31
Объектно ориентированная база данных


3-100615
Котяра
2003-07-03 19:07
2003.07.31
Хранимая процедура в запросе


14-100975
Ower
2003-07-15 21:23
2003.07.31
Random


1-100687
denis24
2003-07-18 10:58
2003.07.31
вычисление новой даты


6-100847
Snap
2003-05-23 00:31
2003.07.31
tracert и им подобные




   Наверх