Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.12.2011, 01:01
Novice99 Novice99 вне форума
Прохожий
 
Регистрация: 30.12.2011
Сообщения: 5
Репутация: 10
По умолчанию Вопрос с Parser

Edit1
Memo1
Memo2
Button1
Cписок слов в файле txt.

Нужно загрузить список слов в Memo1, при вводе букв в Edit1 например "ок" и по нажатию на Button1, все слова содержащие "ок" перенеслись в Memo2. Подскажите примеры.
Ответить с цитированием
  #2  
Старый 30.12.2011, 01:07
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Код:
procedure Button1Click(Sender : TObject);
begin
  if Edit.Text = 'ok' then
    Memo2.Text := Memo1.Text;
end;
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #3  
Старый 30.12.2011, 01:31
Novice99 Novice99 вне форума
Прохожий
 
Регистрация: 30.12.2011
Сообщения: 5
Репутация: 10
По умолчанию

angvelem, когда я в Edit1 другой текст вписываю. Не работает, мне не только с 'ok' нужно.
Ответить с цитированием
  #4  
Старый 30.12.2011, 01:40
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Добавь какие нужны проверки:
Код:
procedure Button1Click(Sender : TObject);
begin
  if (Edit.Text = 'ok') or (Edit.Text = 'bla-bla') or (Edit.Text = 'he-he') then
    Memo2.Text := Memo1.Text;
end;
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
  #5  
Старый 30.12.2011, 01:58
Novice99 Novice99 вне форума
Прохожий
 
Регистрация: 30.12.2011
Сообщения: 5
Репутация: 10
По умолчанию

Не понимаю какие проверки, это мне год или больше надо будет добавлять. Надо чтобы сам текст брался из самого Edit1.Text и если в списке Memo1 присутвтвует он словах в Memo2 парсить.
Ответить с цитированием
  #6  
Старый 30.12.2011, 02:10
U.B.M. U.B.M. вне форума
Новичок
 
Регистрация: 06.10.2011
Сообщения: 94
Версия Delphi: Delphi 7
Репутация: 13
По умолчанию

Если правильно понял, то

Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  list : TStringList;
  i : cardinal;
begin
  list := TStringList.Create;
  list.LoadFromFile('123.txt');
  Memo1.Lines := list;
  Memo2.Clear;
  for i := 0 to memo1.Lines.Count-1 do
    if Pos(edit1.Text, memo1.Lines[i]) > 0 then
      memo2.Lines.Append(memo1.Lines[i]);
end;

Последний раз редактировалось U.B.M., 30.12.2011 в 02:19.
Ответить с цитированием
Этот пользователь сказал Спасибо U.B.M. за это полезное сообщение:
Novice99 (30.12.2011)
  #7  
Старый 30.12.2011, 02:19
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Не нужен StringList, достаточно Memo1.Lines.LoadFromFile.
Я не сразу понял. Пробуй так:
Код:
  for I := 0 to Memo1.Lines.Count - 1 do
    if Pos(Edit1.Text, Memo1.Lines[i]) > 0 then
      Memo2.Lines.Add(Memo1.Lines[i]);
__________________
Je venus de nulle part
55.026263 с.ш., 73.397636 в.д.
Ответить с цитированием
Этот пользователь сказал Спасибо angvelem за это полезное сообщение:
Novice99 (30.12.2011)
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:40.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025