Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
8 / 8 / 4
Регистрация: 02.12.2012
Сообщений: 167

Регистр букв в поиске Edit

20.04.2014, 00:21. Показов 2556. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что сделать, чтоб не учитывался регистр букв при вводе данных?
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm3.Edit1Change(Sender: TObject);
begin
begin
 
if Edit1.Text <> '' then begin
 
Datamodule9.ADOTable1.Filtered := False; 
 
Datamodule9.ed := Edit1.Text; 
 
Datamodule9.ADOTable1.Filtered := True; 
 
end
 
 
else Datamodule9.ADOTable1.Filtered := False;
 
end;
end;
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.04.2014, 00:21
Ответы с готовыми решениями:

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

При поиске в строке все равно на регистр
Здравствуйте! В строку вот так ищу: temp.Contains(@&quot;TEMP&quot;) но может быть и tEmp и temp и т.д. как сделать что программа не обращала...

Ограничение ввода русских букв в Edit. Всплывающая подсказка над Edit'ом
Добрый день, обращаюсь за помощью по следующим двум вопросам. 1) В Edit нужно чтобы вводились только буквы англ. и рус. void __fastcall...

12
Эксперт Pascal/Delphi
 Аватар для droider
4882 / 2819 / 862
Регистрация: 04.10.2012
Сообщений: 10,248
20.04.2014, 01:10
Цитата Сообщение от red1y Посмотреть сообщение
сделать, чтоб не учитывался регистр букв
использовать оператор LIKE в процедуре фильтрации. Мне кажется, что у Вас она не совсем корректна. По какому полю фильтрация записей?
0
8 / 8 / 4
Регистрация: 02.12.2012
Сообщений: 167
20.04.2014, 01:12  [ТС]
Фильтрация записей по полю name,
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
   procedure ADOTable1FilterRecord(DataSet: TDataSet; var Accept: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
  ed: String;
end;
 
var
  DataModule9: TDataModule9;
 
implementation
 
{%CLASSGROUP 'Vcl.Controls.TControl'}
 
uses Unit1, Unit2, Unit3, Unit4, Unit5, Unit6, Unit7, Unit8;
 
{$R *.dfm}
 
procedure TDataModule9.ADOTable1FilterRecord(DataSet: TDataSet;
  var Accept: Boolean);
var
 
s : String;
 
begin
 
 
 
s := Copy(DataSet['name'], 1, Length(ed));
 
 
Accept := s = ed;
 
end;
 
end.
0
Эксперт Pascal/Delphi
 Аватар для droider
4882 / 2819 / 862
Регистрация: 04.10.2012
Сообщений: 10,248
20.04.2014, 01:20
Цитата Сообщение от red1y Посмотреть сообщение
по полю name
Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm3.Edit1Change(Sender: TObject);
begin 
if Edit1.Text <> '' then begin
Datamodule9.ADOTable1.Filter :='name LIKE '+QuotedStr('%'+Edit1.Text+'%');
Datamodule9.ADOTable1.Filtered := True;
end
else
Datamodule9.ADOTable1.Filtered := False;
end;
end.
1
8 / 8 / 4
Регистрация: 02.12.2012
Сообщений: 167
20.04.2014, 01:51  [ТС]
Спасибо) Все получилось, а не подскажите чтоб поиск был по нескольким полям?
Таким способом не выходит)
Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm3.Edit1Change(Sender: TObject);
begin 
if Edit1.Text <> '' then begin
Datamodule9.ADOTable1.Filter :='name LIKE '+QuotedStr('%'+Edit1.Text+'%') and
Datamodule9.ADOTable1.Filter :='price LIKE '+QuotedStr('%'+Edit1.Text+'%');
Datamodule9.ADOTable1.Filtered := True;
end
else
Datamodule9.ADOTable1.Filtered := False;
end;
end
и

Delphi
1
2
3
4
5
6
7
8
9
10
procedure TForm3.Edit1Change(Sender: TObject);
begin 
if Edit1.Text <> '' then begin
Datamodule9.ADOTable1.Filter :='name, price LIKE '+QuotedStr('%'+Edit1.Text+'%');
Datamodule9.ADOTable1.Filtered := True;
end
else
Datamodule9.ADOTable1.Filtered := False;
end;
end
0
Эксперт Pascal/Delphi
 Аватар для droider
4882 / 2819 / 862
Регистрация: 04.10.2012
Сообщений: 10,248
20.04.2014, 02:08
red1y, для фильтрации только по одному из двух полей
Delphi
1
2
3
...
Datamodule9.ADOTable1.Filter :=('name LIKE '+QuotedStr('%'+Edit1.Text+'%')) or ('price LIKE '+QuotedStr('%'+Edit1.Text+'%'));
...
0
8 / 8 / 4
Регистрация: 02.12.2012
Сообщений: 167
20.04.2014, 03:07  [ТС]
Красным горит)
0
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
20.04.2014, 04:06
Скобочки не там расставлены
0
8 / 8 / 4
Регистрация: 02.12.2012
Сообщений: 167
21.04.2014, 12:00  [ТС]
Добавлено через 34 секунды
Цитата Сообщение от Игорь[Igor] Посмотреть сообщение
Скобочки не там расставлены
Плевать, заменил на ADOQuery, Все намного проще оказалось)
0
Эксперт Pascal/Delphi
 Аватар для droider
4882 / 2819 / 862
Регистрация: 04.10.2012
Сообщений: 10,248
21.04.2014, 13:42
Цитата Сообщение от red1y Посмотреть сообщение
заменил на ADOQuery
давно надо было
0
8 / 8 / 4
Регистрация: 02.12.2012
Сообщений: 167
22.04.2014, 15:01  [ТС]
Цитата Сообщение от droider Посмотреть сообщение
давно надо было
Да, с фильтрацией теперь проблем нет, но возникла следующая проблема связей таблиц в свойствах adoquery (sql) (главная=>подчиненная) по примеру (Select * from klienty, zakaz where id_klient = :IDclient) получилось связать только 2 таблицы из 6, в созданной мной темой о данной проблеме, мене дали понять, что так нельзя, сказали пользоваться примером (SELECT * FROM zakaz LEFT JOIN klienty ON zakaz.idklient = klienty.id_klient WHERE id_klient = :IDclient) Но в тех же свойствах adoquery (sql) такое не работает, ругается на оператор FROM или JOIN,) а куда вводить данный запрос до меня так и не дошло, читал статьи, какие то книги с разделом SQL запросов, ничего ясного для себя не открыл, слышал что можно использовать фильтрацию, сейчас ищу инфу)
0
 Аватар для Игорь[Igor]
726 / 478 / 130
Регистрация: 24.12.2008
Сообщений: 3,924
22.04.2014, 16:43
ADOQuery.SQL.Text
1
Эксперт Pascal/Delphi
 Аватар для droider
4882 / 2819 / 862
Регистрация: 04.10.2012
Сообщений: 10,248
22.04.2014, 16:44
Цитата Сообщение от red1y Посмотреть сообщение
куда вводить данный запрос до меня так и не дошло
Delphi
1
ADOQuery1.SQL.Text :='Запрос';
(это если запрос не привышает 255 символов)
или
Delphi
1
2
3
4
ADOQuery1.SQL.Add('Block1');
ADOQuery1.SQL.Add('Block2');
ADOQuery1.SQL.Add('Block3');
...
(для более объемных запросов)

Цитата Сообщение от red1y Посмотреть сообщение
слышал что можно использовать фильтрацию
Можно. Так же, как в ADOTable.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.04.2014, 16:44
Помогаю со студенческими работами здесь

Edit и регистр
Доброе время суток!!! Столкнулся вот с такой проблемкой: есть Edit, в него дожны вводится даные так, чтобы первый символ был большой, а...

Количество букв в поле edit (именно букв)
Всем привет! Скажите, как проверить поле edit на буквы? Именно на буквы. То есть, если в поле edit одни пробелы, или символы...

Регистр букв
С консолью подружился, тут попробовал на билдере,использовать тот же консоль только с эдитами, и уже не работает. Что я хочу сделать? Я...

Регистр букв
Подскажите если в вордстате ключевое слово написанно с маленькой буквы то в тайтле его тоже нужно прописывать с маленькой буквы или не...

Регистр букв
не знаю как вопрос правильно задать... int drawTriangle(int lines,string a){ if(a==&quot;isosx&quot;) drawIsosXTriangle(lines); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
Расскажи мне о Мире, бродяга
kumehtar 12.11.2025
— Расскажи мне о Мире, бродяга, Ты же видел моря и метели. Как сменялись короны и стяги, Как эпохи стрелою летели. - Этот мир — это крылья и горы, Снег и пламя, любовь и тревоги, И бескрайние. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru