Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.05.28;
Скачать: CL | DM;

Вниз

Фильтр таблицы   Найти похожие ветки 

 
Steplerr ©   (2006-04-07 19:31) [0]

Может быть тупой вопрос, но помогите пожалуйста. Имеется таблица и поле для ввода текста. Как сделать так, чтобы при изменении текста в поле в таблице отображались только значения начинающиеся с символов из поля?
Использовал ADOTable.


 
mr.il ©   (2006-04-07 19:48) [1]

Почитай хелп про фильтрацию. Или пользуй sql.


 
Рустем ©   (2006-04-07 20:21) [2]


> Steplerr ©

Для начала советую использовать TADODataSet. Далее в событии OnChange компонента TEdit прописать следующее:

procedure TForm.EditChange(Sender: TObject);
begin
 with ADODataSet do
 begin
   Close;
   CommandText := "SELECT * FROM MyTable WHERE MyField LIKE "" + Edit.Text + "%"";
   Open;
 end;
end;

Кроме того, возможно тебе понадобится такая функция, как AnsiUpperCase. И в идеале желательно использовать таймер...


 
Desdechado ©   (2006-04-07 20:50) [3]

> в событии OnChange компонента TEdit
не делай так, умрешь

> в идеале желательно использовать таймер
еще один мертворожденный совет

автору
на первой же странице
http://delphimaster.net/view/3-1144406589/


 
Mike Kouzmine ©   (2006-04-07 23:51) [4]

Desdechado ©   (07.04.06 20:50) [3] > в идеале желательно использовать таймер
еще один мертворожденный совет

Почему?


 
Плохиш ©   (2006-04-08 04:04) [5]

А я тоже не понял каким боком здесь таймер?


 
Рустем ©   (2006-04-08 12:31) [6]


> Плохиш ©   (08.04.06 04:04) [5]
> А я тоже не понял каким боком здесь таймер?

Открой Delphi, нажми клавишу F1, нажми кнопочку "Вызов справки", перейди на закладку "Поиск" и попробуй в строке поиска без пауз набрать несколько символов...поиск будет осуществляться после паузы (по умолчанию параметров поиска).


> Desdechado ©   (07.04.06 20:50) [3]
> > в событии OnChange компонента TEdit
> не делай так, умрешь

Аргументировать надо!


 
Anatoly Podgoretsky ©   (2006-04-08 12:32) [7]

Таймер нужен, чтобы не умереть. Не надо на каждый чих делать запрос.


 
Mike Kouzmine ©   (2006-04-08 16:06) [8]

Anatoly Podgoretsky ©   (08.04.06 12:32) [7] Я и спрашиваю, почему
Desdechado ©   (07.04.06 20:50) [3]
> в идеале желательно использовать таймер
еще один мертворожденный совет


 
Anatoly Podgoretsky ©   (2006-04-08 19:40) [9]

Без таймера придется делать запрос на каждый чих, с таймером по паузе.
Очень полезно, если в состоянии нажимать клавиши со скоротью паузы.


 
Anatoly Podgoretsky ©   (2006-04-08 19:40) [10]

В дополнение так работает весь виндус, например при навигации или поиска в проводнике


 
Desdechado ©   (2006-04-08 21:18) [11]

Не вижу смысла обрабатывать паузы между нажатиями. Глупо ожидать от пользователя равномерности нажатия, он ведь и букву на клаве может не сразу найти, да и траффик при таком подходе ужасный.
Самый нормальный подход: набрал комбинацию, нажал кнопку, получил ответ. Не понравилось - изменил, до/перенабрал, нажал кнопку, получил ответ. Иное, имхо, от лукавого.


 
Anatoly Podgoretsky ©   (2006-04-08 22:24) [12]

Desdechado ©   (08.04.06 21:18) [11]
Те кто не в состоянии, не смогут воспользоваться преимуществами таймера и для них не будет разницы. Вариант с кнопкой "выполнить" также имеет право на существование.


 
Desdechado ©   (2006-04-09 20:14) [13]

> Те кто не в состоянии
если это камень в мой огород, то я в состоянии, только смысла не вижу именно в этом случае
хотя и пользуюсь иногда задержками подобного рода


 
Anatoly Podgoretsky ©   (2006-04-09 20:19) [14]

Desdechado ©   (09.04.06 20:14) [13]
Всему свое место, в данном случае таймер не помешает, а поможет, но если он введет кнопку то таймер будет лишним. Еще более полезен данный таймер в связи мастер/детайл при навигации.


 
Desdechado ©   (2006-04-09 20:34) [15]

при мастер-детальной связке все еще хуже с таймером-то
трафик растет экспоненциально, а это плохо


 
Desdechado ©   (2006-04-09 20:34) [16]

Удалено модератором


 
Desdechado ©   (2006-04-09 20:36) [17]

сорри за дубль
но зато обнаружилось, как они появляются
/оффтоп
Если ввести пароль и нажать кнопку, то страница переоткрывается не сразу. А случайное нажатие кнопки повторно (или более) вызывает очередное добавление поста.
/оффтоп



Страницы: 1 вся ветка

Текущий архив: 2006.05.28;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.026 c
1-1145425737
K_VAL
2006-04-19 09:48
2006.05.28
Восстановить иконку проекта


1-1144999513
_RusLAN
2006-04-14 11:25
2006.05.28
Exception. Изменение сообщения ошибки.


1-1145334556
Layner
2006-04-18 08:29
2006.05.28
TChart > Axis > Scales > Automatic, но как показать график чуть


15-1146592419
Новичоккк
2006-05-02 21:53
2006.05.28
Вопрос по HTML


9-1130581983
VolanD666
2005-10-29 14:33
2006.05.28
Octree. Как сохранить в файл?