Переход По Записям Дбгрида

Тема в разделе "Delphi - Компоненты", создана пользователем novachok, 17 сен 2012.

  1. novachok

    novachok New Member

    Регистрация:
    16 авг 2012
    Сообщения:
    1
    Симпатии:
    0
    Подскажите как при прокрутке роликом в дбгриде выделялась следующая запись где (FieldByName('Num').IsNull) не пустое, если подряд идут Null Null а дальше, например, цифра 10 - то переходило на строку с цифрой 10.
    Например есть:
    Null
    1
    2
    Null
    Null
    3
    Null
    4
    5
    6
    Null
    нужно чтобы прокрутка становилась только на цифры при прокрутке роликом или клику по ячейке

    Переходы я сделал.
    Код (Delphi):
    // если первая запись
    if (ModuleBD.ADOZvit.RecNo = 1) then
    begin
    NoActive := true;
    ModuleBD.ADOZvit.Next;
    end
    else
    // если в средине строк и предыдущая не пустая
    if (ModuleBD.ADOZvit.RecNo <> ModuleBD.ADOZvit.RecordCount) and
    (not NoActive) then
    ModuleBD.ADOZvit.Next
    // если последняя запись и предыдущая запись не пустая
    else if (ModuleBD.ADOZvit.RecNo = ModuleBD.ADOZvit.RecordCount) and
    (not NoActive) then
    begin
    NoActive := false;
    ModuleBD.ADOZvit.Prior;
    end
    // если последняя запись пустая и предыдущая тоже пустая
    else if (ModuleBD.ADOZvit.RecNo = ModuleBD.ADOZvit.RecordCount) and
    (NoActive) and (not ActiveCount) then
    begin //
    ModuleBD.ADOZvit.RecNo := ActiveStr;
    end
    else
    begin // переходим на след. строку
    NoActive := true;
    //ActiveCount := false; // нет активных строк
    ModuleBD.ADOZvit.Next;
    end;
    end

    Но возникла проблема когда все значения Null. Тогда зацыклюется цикл. Как проверить что если есть хоть одна запись то перейти к ней, а если нет то ничего не делать!
     
  2. sinkopa

    sinkopa Well-Known Member

    Регистрация:
    17 июн 2009
    Сообщения:
    344
    Симпатии:
    9
    Не вижу цикла никакого...
    Вы какое событие обрабатываете то? И какой компонет вообще?
    короче... полный код в студию
     
Загрузка...

Поделиться этой страницей