Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.07.2015, 09:40   #1
Helen_geo
Новичок
Джуниор
 
Регистрация: 11.07.2015
Сообщений: 2
По умолчанию StringList -RichEdit

Всем, доброго дня. Очень прошу, помогите решить задачу.
В процедуре
ss1 : TstringList - создается и заполняется выше в программе
При каждом нажатии клавиши подбирает похожие слова из ss1 в
ListBox1. работает с начала стоки.
Теперь надо что бы поиск работал с любого места в тексте TRichEdit (желание пользователя). В RichEdit -'Би' пробел..след слово пользователь вспомнил и начинает вводить после Би след букву
Код:
procedure TFrmMemoEdit.meEditChange(Sender: TObject);
var
 i : integer;
begin
  ListBox1.Clear;
with Sender as  TRichEdit do
begin
  for i := 0 to ss1.Count - 1 do
  begin
     if CompareText (AnsiLowerCase(Text), AnsiLowerCase(Copy(ss1.strings[I],1,Length(meEdit.Text))))=0 then
     begin
       ListBox1.AddItem(ss1.strings[I],ListBox1);
    end;
   end;
 end;
 ListBox1.ItemIndex:=0;
 ListBox1.SetFocus;
end;

Последний раз редактировалось Stilet; 29.07.2015 в 11:29.
Helen_geo вне форума Ответить с цитированием
Старый 29.07.2015, 11:33   #2
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Цитата:
с любого
это с с какого?
именно с любого (проверять ВСЕ позиции от первой до последней)?!
ПРОИЗВОЛЬНАЯ (но не любая) позиция указанная пользователем? SelText.
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 29.07.2015 в 12:37.
evg_m вне форума Ответить с цитированием
Старый 29.07.2015, 14:24   #3
Helen_geo
Новичок
Джуниор
 
Регистрация: 11.07.2015
Сообщений: 2
По умолчанию

курсор стоит на произвольной строке, с произвольного символа пользователь начинает вводить текст, может вводить новый текст , может вводить продолжая какое-то слово. Разделителем слова думаю надо считать пробел. Получается пробел после ..'бро'.. пользователь ставить курсор после бро и начинает вводить след символ 'н', у меня должны из ss1, выгрузиться все слова не с символа который вводит пользователь, а слова с 'брон'.
Helen_geo вне форума Ответить с цитированием
Старый 29.07.2015, 14:42   #4
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

Итак позиция есть.
"Бежим" вперед/назад до разделителя (конца/начала) и получаем то что надо.
P.S. работать на заказ и не мочь пользоваться справкой!!!
Изображения
Тип файла: jpg 12.JPG (49.0 Кб, 50 просмотров)
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск и удаление строк в StringList из другово stringlist SmoK777 Общие вопросы Delphi 3 06.08.2012 08:21
Stringlist record222 Общие вопросы Delphi 1 26.06.2012 17:35
Загрузка в RichEdit текста из файла, и получение его из RichEdit Byurrer Общие вопросы C/C++ 1 09.04.2011 10:17
StringList adr Общие вопросы Delphi 0 05.11.2010 18:43
stringlist grater83 Общие вопросы Delphi 2 21.09.2009 14:26