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

DBGrid, скроллинг   Найти похожие ветки 

← →
Mimikron   (2014-11-11 20:41) [0]

Подскажите в какую сторону копать:

в дбгриде отображается большой список фамилий, отсортированных по алфавиту.
хотелось бы при скроллинге мышкой или по Up\Down выводить первую букву фамилии, для быстрого перемещения по списку к нужному месту, как на планшетах делают.

как правильно это можно сделать:
перехватывать WM_VSCROLL грида,  ловить событие onDataChange DataSeta, AfterScroll датасета, переопределить WindowProc DBGrid-a или ещё как?


← →
Ega23 ©   (2014-11-11 20:54) [1]

dataChange, только не у DataSet, а DataSource.
У DataSet может быть включен режим DisableControls


← →
Mimikron   (2014-11-11 21:26) [2]

а какой алгоритм будет если, например, нужно отображаться текущую букву только при реально длинном скроллинге?
тоесть когда на одну запись переходят туда-сюда или мышкой тыкают на видимую запись в гриде и т.п. тут отображать не имеет смысла.

может есть какие мысли в алгоритме?


← →
Ega23 ©   (2014-11-11 21:57) [3]


> может есть какие мысли в алгоритме?


Если честно, то, ИМХО, должно быть "безобразно, но единообразно". Пусть даже в НД всего одна запись.



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

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



Память: 0.45 MB
Время: 0.008 c
2-1415045309
M.A.
2014-11-03 23:08
2016.07.24
WM_MOUSEMOVE для STATIC


2-1413564529
azl
2014-10-17 20:48
2016.07.24
Вызов процедуры OnClick из модуля


15-1441149908
Юрий Зотов
2015-09-02 02:25
2016.07.24
Наиважнейшая проблема...


15-1442994218
Gedevan
2015-09-23 10:43
2016.07.24
Как узнать где зациклилась программа?


15-1444944604
Юрий
2015-10-16 00:30
2016.07.24
С днем рождения ! 16 октября 2015 пятница




   Наверх