ВУЗ:
Составители:
Рубрика:
14
та ReplaceDialog1
procedure TMainform.ReplaceDialog1Replace(Sender: TOb-
ject);
var Found:integer; (* позиция поиска *)
FoundLen:integer; (* длина образца поиска *)
ReplaceLen:integer; (* длина образца замены *)
begin
(* Обработка нажатия кнопки Заменить все в окне поиска и
замены *)
with ReplaceDialog1 do
if frReplaceAll in Options
then
begin
(* текущая позиция принимает значение 1*)
index:=1;
(* Определение образца поиска *)
ToFind:=ReplaceDialog1.FindText;
(* Определение длины образца поиска *)
FoundLen:=Length(ToFind);
(* Определение длины образца замены *)
ReplaceLen:=Length(ReplaceDialog1.ReplaceText);
(* В переменную FindIn переписывается текст из компонента
Memo1 *)
FindIn:=Mainform.Memo1.Text;
(* Определение номера символа, с которого образец поиска
встречается в тексте *)
Found:=Pos(ToFind,FindIn);
(* Пока образец поиска встречается в тексте происходит вы-
деление найденного слова и его замена *)
while Found>0 do
begin
(* В переменную FindIn переписывается текст из компонента
Memo1 *)
FindIn:=Mainform.Memo1.Text;
(* Из FindIn удаляются символы от начала текста до послед-
него символа найденного слова *)
delete(FindIn,1,index+Found+FoundLen-2);
(* Окно формы располагается поверх всех остальных окон *)
Mainform.BringToFront;
(* Фокус устанавливается на компонент Memo1 *)
Mainform.ActiveControl:=Memo1;
(* Определяется номер символа, с которого начинается выде-
ление *)
Memo1.SelStart:=Index+Found-2;
(* Задается длина выделения
*)
Memo1.SelLength:=FoundLen;
(* Выделенный текст заменяется на образец замены *)
Memo1.SelText:=ReplaceDialog1.ReplaceText;
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »