Компонент Delphi ReplaseDialog

значок компонента ReplaseDialogКомпонент Delphi ReplaseDialog располагается на странице Dialogs Палитры компонентов. Данный компонент - этот диалог предназначен для замены текста, который расположен в поле Что (Find what)  на текст помещенный в поле Чем (Replace with). Данные поля имеют тип String и являются свойствами FindText и ReplaceText соответственно.

Компонент ReplaseDialog имеет общие свойства и методы компонента FindDialog. В дополнение к ним он имеет свойство ReplaceText (String) и метод OnReplace (тип TNotifyEvent) возникающий при клике на кнопки Replace и Replace All (отвечают за замену искомого фрагмента текста).

Внешний вид он имеет следующий:

Диалоговое окно Delphi для поиска и замены текста

 пример приложенияДля лучшего понимания работы по замене текста создадим такое приложение: на форма поместим компоненты Edit,  Button и ReplaseDialog. Разместим их как показано на рисунке. Напишем заголовки кнопки и формы. Затем создадим обработчик кнопки и обработчик замены текста.

Для кнопки:

procedure TForm1.Button1Click(Sender: TObject);
begin
     ReplaceDialog1.Execute;
end;

Для замены текста с Помощью Инспектора объектов на вкладке Events компонента ReplaseDialog  создаем двойным щелчком событие OnReplace:

procedure TForm1.ReplaceDialog1Replace(Sender: TObject);
begin
      while (pos(ReplaceDialog1.FindText,Edit1.Text) <> 0) do
       begin
        With Edit1 do begin 
           SelStart := pos(ReplaceDialog1.FindText,Edit1.Text)-1;
           SelLength:= Length(ReplaceDialog1.FindText);
           SelText  := ReplaceDialog1.ReplaceText;
         end;
         // При необходимости одноразовой замены завершаем цикл
         if not (frReplaceAll in ReplaceDialog1.Options) then Break;
       end;
end;

Запустите приложение и произведите любого участка текста.

Итог: мы познакомились с компонентом ReplaseDialog.

 

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *