![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
DBGrid, скроллинг
Mimikron © (2014-11-11 20:41:00)Подскажите в какую сторону копать:
в дбгриде отображается большой список фамилий, отсортированных по алфавиту.
хотелось бы при скроллинге мышкой или по Up\Down выводить первую букву фамилии, для быстрого перемещения по списку к нужному месту, как на планшетах делают.
как правильно это можно сделать:
перехватывать WM_VSCROLL грида, ловить событие onDataChange DataSeta, AfterScroll датасета, переопределить WindowProc DBGrid-a или ещё как?
Ega23 (2014-11-11 21:57:00) [1]
> может есть какие мысли в алгоритме?
Если честно, то, ИМХО, должно быть "безобразно, но единообразно". Пусть даже в НД всего одна запись.
Mimikron (2014-11-11 21:26:00) [2]а какой алгоритм будет если, например, нужно отображаться текущую букву только при реально длинном скроллинге?
тоесть когда на одну запись переходят туда-сюда или мышкой тыкают на видимую запись в гриде и т.п. тут отображать не имеет смысла.
может есть какие мысли в алгоритме?
Ega23 (2014-11-11 20:54:00) [3]dataChange, только не у DataSet, а DataSource.
У DataSet может быть включен режим DisableControls