Fórum richtext - copiar partes do texto #239213
23/06/2004
0
olá amigos, meu problema é o seguinte :
Como posso localizar e copiar uma parte de um texto em formato .rtf e
inserir o mesmo em outras partes do texto ??
se puderem ajudar, agradeço muito !
Reginaldo
Como posso localizar e copiar uma parte de um texto em formato .rtf e
inserir o mesmo em outras partes do texto ??
se puderem ajudar, agradeço muito !
Reginaldo
Reginaldo174
Curtir tópico
+ 0
Responder
Posts
23/06/2004
Motta
Veja exemplo no help
Position, Execute, FindText, OnFind, SelStart, SelLength example
This example requires a TRichEdit, a TButton, and a TFindDialog.
Clicking the button click will display a Find Dialog to the right of the edit control. Filling in the ´Find what´ text and pressing the Find Next button will select the first matching string in the Rich Edit control that follows the previous selection.
procedure TForm1.Button1Click(Sender: TObject);
begin
FindDialog1.Position := Point(RichEdit1.Left + RichEdit1.Width, RichEdit1.Top);
FindDialog1.Execute;
end;
procedure TForm1.FindDialog1Find(Sender: TObject);
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
with RichEdit1 do
begin
{ begin the search after the current selection if there is one }
{ otherwise, begin at the start of the text }
if SelLength <> 0 then
StartPos := SelStart + SelLength;
else
StartPos := 0;
{ ToEnd is the length from StartPos to the end of the text in the rich edit control }
ToEnd := Length(Text) - StartPos;
FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);
end;
end;
end;
Position, Execute, FindText, OnFind, SelStart, SelLength example
This example requires a TRichEdit, a TButton, and a TFindDialog.
Clicking the button click will display a Find Dialog to the right of the edit control. Filling in the ´Find what´ text and pressing the Find Next button will select the first matching string in the Rich Edit control that follows the previous selection.
procedure TForm1.Button1Click(Sender: TObject);
begin
FindDialog1.Position := Point(RichEdit1.Left + RichEdit1.Width, RichEdit1.Top);
FindDialog1.Execute;
end;
procedure TForm1.FindDialog1Find(Sender: TObject);
var
FoundAt: LongInt;
StartPos, ToEnd: Integer;
begin
with RichEdit1 do
begin
{ begin the search after the current selection if there is one }
{ otherwise, begin at the start of the text }
if SelLength <> 0 then
StartPos := SelStart + SelLength;
else
StartPos := 0;
{ ToEnd is the length from StartPos to the end of the text in the rich edit control }
ToEnd := Length(Text) - StartPos;
FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd, [stMatchCase]);
if FoundAt <> -1 then
begin
SetFocus;
SelStart := FoundAt;
SelLength := Length(FindDialog1.FindText);
end;
end;
end;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)