Поддержка / Donate
 

WebMoney

Яндекс.Деньги

SMS.Копилка
Деньги@Mail.ru
Rupay
E-gold
PayPal

 

Благодарю за поддержку!

Лента RSS - Новости сайта Новости сайта
Лента RSS - Новости форума Новости форума
Добавить в закладки и поделиться Bookmark and Share

 

Архив исходников

 


Automatic translation

 
English German French
Italian Spanish Portuguese
Greece Japan Chinese
  Korean  

  

 

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Поиск в DBGride без ввода искомого значения в поле ввода

Твой Windows свопиться украдкой
На твой заполненый хард драйв
В него тихонько кинь гранаткой
Чтоб больше места он не взял.

Можно обрабатывать событие OnKeyPress компонента DBGrid:


procedure TSubscriber_frm.RxDBGrid1KeyPress(Sender: TObject;
          var Key: Char);
begin
  // если набор номера (численного значения)
  if ((Ord(key)>=48) and (Ord(key)<=57)) or ((Ord(key)>=96) and (Ord(key)<=105)) then
  begin
    edit1.Visible:=True;
    edit1.SetFocus;
    edit1.Text:=key;
    edit1.SelStart:=1;
  end;
  // если набор текста
  if (Ord(key)>=192) and (Ord(key)<=255) then
  begin
    edit2.Visible:=True;
    edit2.SetFocus;
    edit2.Text:=key;
    edit2.SelStart:=1;
  end;
end;

А в обработке события OnChange edit1 и edit2 применить ф-цию FindNearest по нужному полю. Прятать edit-ы , после удачного поиска, либо по нажатии пользователем стрелки, Enter-a и т.п.




Источник - Проект "Delphi World" © Выпуск 2002 - 2004
Автор проекта: Акулов Николай



   Rambler's Top100             Яндекс цитирования