|
#1
|
||||
|
||||
Вопрос с ДБГридом
Здравствуйте все ... у меня сложилась вот такая хитрая ситуация:
Есть ДБГрид в которм данные отображаются через запрос. Под Гридом есть Лейбл с текстом вида: Строка № (номер строки в Гриде) из (кол-во строк в Гриде всего) Суть вопроса состоит в том, что есть данные только выбрались и еще ничего с формой не делалоь вообще при первом нажатии кнопочки Вверх или Вниз указаная строка не изменяется ... а уже при ледующем нажатии показивает что выделенная строка №2 (хотя фактически курсор уж ена третей) .... Код процедуры в событии GridKeyDown Код:
case Key of 38,40 :BarCur.SimpleText:='Строка №: '+IntToStr(Grid.DataSource.DataSet.RecNo)+' из '+IntToStr(Grid.DataSource.DataSet.RecordCount); else Key:=0; end; Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#2
|
|||
|
|||
может там постоянно на одну меньше позиция? птому что отсчет в базе идет с нуля..
|
#3
|
||||
|
||||
А причет тут база ?? Я же работаю только с Гридом и с номером выделенной строки ....
... кстати если остановиться (например) на 12 записи и потом нажать кнопку "Вверх" то он с опоздание м все-равно покажет только 12 запись хотя курсор уже стоит на 11 Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|
#4
|
||||
|
||||
скорее всего GridKeyDown происходит ДО изменения выделенной строки
а вот у тогоже ADOQuery есть событие AfterScroll |
#5
|
||||
|
||||
s0Creator, ты оказался прав ... и че я сам до этого не допёр )
Переставил код в событие GridKeyUp и все стало путём !!! Спасибо тебе !!! Поживу - увижу, Доживу - узнаю, Выживу - учту. [P.S.]->Выражая благодарность за помощь - Вы получаете шанс на помощь в следующий раз
|