hmm.. und wie kann ich dann machen das ich nicht direkt die listbox anspreche, wenn es wie luckie sagt ungünstig ist?
Delphi-Quellcode:
function LinksMarkieren(RichEdit: TRichEdit): String;
var
s, link: String;
nr, nr2, linkanfang, linkend: Integer;
href, hrefend, alllink: Boolean;
begin
for nr:=0 to Length(RichEdit.Text)
do begin
s:=RichEdit.Text;
if (s[nr] = '<') then href := True;
if href then
if (s[nr] = 'a') and (s[nr-1] = '<') then linkanfang:=nr-1;
if (s[nr] = '/') and (href=true) then hrefend:=True;
if hrefend and (href=true) then
if (s[nr] = 'a') and (s[nr+1] = '>') then
begin
linkend := nr+1;
alllink := True;
end;
if alllink = True then begin
link:='';
for nr2:=linkanfang to linkend do link:=link + s[nr2];
ListedLinks:=ListedLinks + link; // das ist der versuch mit der globalen, aber ist nicht was ich will
ListBox1.Items.Add(link); // damit hat er scheinbar ein problem...
alllink := False;
href := False;
hrefend := False;
end;
end;
end;
aufgerufen wird sie ann einfach mit:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
LinksMarkieren(RichEdit1);
end;
danke für eure Hilfe