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

Вниз

RichEdit и Replace   Найти похожие ветки 

 
KA_ ©   (2003-07-24 19:37) [0]

Как реализовать замену текста в TRichEdit?
Пробывал обращаться напрямую к свойству Strings - ломает форматирование.


 
KA_ ©   (2003-07-24 19:41) [1]

Ну конечно же не Strings, а Lines.


 
KA_ ©   (2003-07-24 20:35) [2]

Разобрался:
procedure ReplaceText(RichEdit: TRichEdit; const OldText, NewText: String);
var
StartPos, I: Integer;
begin
StartPos := 0;
I := RichEdit.FindText(OldText, StartPos, -1, []);
while I >= 0 do
begin
RichEdit.SelStart := I;
RichEdit.SelLength := Length(OldText);
RichEdit.SelText := NewText;
end;
end;


 
cyberwolf ©   (2003-07-25 02:52) [3]

спасибо, мне эта функция пригодится :)


 
Sergio_nnm ©   (2003-07-25 03:29) [4]

Имхо, сложновато будет...
Можно так:
RichEdit.Text:=StringReplace(RichEdit.text,что_заменяем,на_что,[rfReplaceAll]);


 
KA_ ©   (2003-07-25 09:52) [5]


> cyberwolf © (25.07.03 02:52)

Там неточность, точнее ошибка - цикл бесконечный :)
Правильный код такой:
procedure ReplaceText(RichEdit: TRichEdit; const OldText, NewText: String);
var
StartPos, I: Integer;
begin
StartPos := 0;
I := RichEdit.FindText(OldText, StartPos, -1, []);
while I >= 0 do
begin
StartPos := I + Length(OldText);
RichEdit.SelStart := I;
RichEdit.SelLength := Length(OldText);
RichEdit.SelText := NewText;
I := RichEdit.FindText(OldText, StartPos, -1, []);
end;
end;



> Sergio_nnm © (25.07.03 03:29)

Ты первое сообщение читал? Вчитайся в слова

> ломает форматирование




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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
3-20417
Eraser
2003-07-13 16:01
2003.08.07
Вопрос по LookUp-полям


14-20790
Dmitriy O.
2003-07-22 11:06
2003.08.07
Я извиняюсь


1-20600
Opryshok
2003-07-23 13:20
2003.08.07
как привести String к array


3-20401
Grac
2003-07-16 11:00
2003.08.07
Итоги в QReport


14-20702
Ihor Osov'yak
2003-07-23 02:41
2003.08.07
Любителям не спать вопрос..