Лена |
Отправлено: 02.11.2006, 19:26 |
|
Мастер участка
Группа: Участник
Сообщений: 501
|
Как реализовать следующее:
При щелчке на полосе прокрутки в DBGrid соответственно перемещается и dbIndicator напротив строк. Как считать значение из строки, на которую указывает индикатор после щелчка на полосе прокрутки? (см.рис).
Считывать так:
Int ParamForSQL1 = DataModule2->ClientDataSetDoors->FieldByName("id")->Value;
Однако в каком событии отслеживать указатель dbIndicator при прокрутке?
Присоединить изображение
|
|
beginner |
Отправлено: 03.11.2006, 01:12 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 44
|
Если меняется индикатор, тогда TDataSource.OnDataChange.
Т.е. тот DataSource который между Grid-ом и TClientDataSet. |
|
Valdemar |
Отправлено: 03.11.2006, 08:16 |
|
Мастер участка
Группа: Участник
Сообщений: 433
|
Или в событии AfterScroll у TClientDataSet. |
|
beginner |
Отправлено: 03.11.2006, 09:14 |
|
Дежурный стрелочник
Группа: Участник
Сообщений: 44
|
QUOTE (Valdemar @ 03.11.2006, 09:16) | Или в событии AfterScroll у TClientDataSet. |
Да, немношко подумав, мне кажется в данном случае AfterScroll лучше, так как она происходит только при перемещении, а OnDataChange кроме перемещения и генерируется и при редактировании записи.
Отредактировано beginner — 03.11.2006, 10:14 |
|
Лена |
Отправлено: 03.11.2006, 10:12 |
|
Мастер участка
Группа: Участник
Сообщений: 501
|
Спасибо, сейчас попробую с AfterScroll у TClientDataSet.
Я искала подходящее событие в DBGrid, а там ничего не нашла. |
|
olegenty |
Отправлено: 03.11.2006, 10:18 |
|
Ветеран
Группа: Модератор
Сообщений: 2412
|
2 Лена — уже не раз обсуждалось, что ГРИД ТОЛЬКО ОТОБРАЖАЕТ ДАННЫЕ. поэтому и не должно быть в нём подобных событий.
|
|
Лена |
Отправлено: 03.11.2006, 12:10 |
|
Мастер участка
Группа: Участник
Сообщений: 501
|
QUOTE (olegenty @ 03.11.2006, 11:18) | 2 Лена — уже не раз обсуждалось, что ГРИД ТОЛЬКО ОТОБРАЖАЕТ ДАННЫЕ. поэтому и не должно быть в нём подобных событий. |
Забыла, sorry!
P.S.
Все работает. |
|