Показать сообщение отдельно
  #1  
Старый 13.11.2012, 10:52
RodionSabitov RodionSabitov вне форума
Прохожий
 
Регистрация: 31.07.2012
Сообщения: 22
Репутация: 10
По умолчанию Некорректно работает поиск и выделени записи в DBGrid

Доброе утро!

Ситуация следующая: Delphi7, БД paradox.
организовал поиск по БД через locate.

Пример:
Выделяю кликом мыши 1 запись. В поиске, через TEdit, ввожу имя той записи, которая стоит выше выделенной. Курсор переходит на запрашиваемую запись, если кликнуть на нее, то выделяется другая запись, не та, что запрашивалась.
Если в поиске вводить запись, имя которой находится ниже выделенной изначально, то после наведения на нее(запрошенную запись) курсора и кликанья на нее - выделяется корректно, т.е. именно та запись, которая была запрошена.

Код:
Код:
procedure TMainFrm.NameEdChange(Sender: TObject);
begin
 //Data.CustTbl.Locate('CUST_NAME',NameEd.Text,[loCaseInsensitive,loPartialKey]);
 CustGrd.DataSource.DataSet.Locate('CUST_NAME',NameEd.Text,[loCaseInsensitive,loPartialKey]);
  Label2.Caption := IntToStr(CustGrd.DataSource.DataSet.RecNo);
 end;
Админ: Теги, и еще раз теги!

По поводу некорректного выделения записи: если выделить кликом мыши 1 запись и колесом мыши двигаться по таблице вверх, то получаются выделены 2 записи. как исправить это? чтобы выделялась только та запись, которая относится к выделению колесом мыши.
Изображения
Тип файла: jpg выделяем произвольную запись.JPG (91.8 Кбайт, 3 просмотров)
Тип файла: jpg запрашиваем запись, которая выше выделенной изначально.JPG (95.6 Кбайт, 3 просмотров)
Тип файла: jpg после клика на запись.JPG (88.2 Кбайт, 3 просмотров)
Ответить с цитированием