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

Вниз

Поиск   Найти похожие ветки 

 
010101001010001010101001   (2004-04-30 22:34) [0]

Как осуществить в текством редакторе такие функии как ПОИСК и ПОИСК И ЗАМЕНА.


 
Gero ©   (2004-04-30 22:36) [1]

Это зависит от того, какой компонент используется в качестве поля редактирования.


 
010101001010001010101001   (2004-04-30 22:38) [2]

TMemo


 
Gero ©   (2004-04-30 22:44) [3]


procedure TForm1.FindDialog1Find(Sender: TObject);
var
 Buff, P, FT: PChar;
 BuffLen: Word;
begin
 with Sender as TFindDialog do
 begin
   GetMem(FT, Length(FindText) + 1);
   StrPCopy(FT, FindText);
   BuffLen := Memo1.GetTextLen + 1;
   GetMem(Buff, BuffLen);
   Memo1.GetTextBuf(Buff, BuffLen);
   P := Buff + Memo1.SelStart + Memo1.SelLength;
   P := StrPos(P, FT);
   if P = nil then
     MessageBeep(0)
   else
   begin
     Memo1.SelStart := P - Buff;
     Memo1.SelLength := Length(FindText);
   end;
   FreeMem(FT, Length(FindText) + 1);
   FreeMem(Buff, BuffLen);
 end;
end;

procedure TForm1.ReplaceDialog1Replace(Sender: TObject);
begin
 with Sender as TReplaceDialog do
   while True do
   begin
     if Memo1.SelText <> FindText then
       FindDialog1Find(Sender);
     if Memo1.SelLength = 0 then
       Break;
     Memo1.SelText := ReplaceText;
     if not (frReplaceAll in Options) then
       Break;
   end;
end;



 
010101001010001010101001   (2004-04-30 22:50) [4]

Спасибо за код! У меня еще вопрос: как сделать "Поиск дальше"???


 
Gero ©   (2004-04-30 23:25) [5]


> У меня еще вопрос: как сделать "Поиск дальше"???

Код, приведенный в [3] это он и есть.


 
Alexander666 ©   (2004-05-01 06:50) [6]

Мда, и неплохо было бы для поиска почитать про алгоритмы поиска (ну эт если там целая Библия загружена :-))



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
14-1082696964
WondeRu
2004-04-23 09:09
2004.05.16
Ж.-П. Сартр "Тошнота"


3-1082380121
Term
2004-04-19 17:08
2004.05.16
Можно ли в запросе три поля VARCHAR объеденить в одно


1-1083288251
Сергей Бушин
2004-04-30 05:24
2004.05.16
Алгоритм RSA


3-1082349604
Slavik_v
2004-04-19 08:40
2004.05.16
Суммирование записей с одиниковым значением в поле Field


1-1083141363
Tsvetkov A.V.
2004-04-28 12:36
2004.05.16
Потоки в ДЛЛ