det her skulle løse dit problem
//husk at uses Richedit
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls,shellapi,richedit;
type
TForm1 = class(TForm)
RichEdit1: TRichEdit;
Gem: TButton;
Hent: TButton;
procedure FormCreate(Sender: TObject);
procedure GemClick(Sender: TObject);
procedure HentClick(Sender: TObject);
protected
procedure WndProc(var Message: TMessage); override;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.WndProc(var Message: TMessage);
var
p: TENLink;
strURL: string;
begin
if (Message.Msg = WM_NOTIFY) then
begin
if (PNMHDR(Message.LParam).code = EN_LINK) then
begin
p := TENLink(Pointer(TWMNotify(Message).NMHdr)^);
if (p.msg = WM_LBUTTONDOWN) then
begin
SendMessage(RichEdit1.Handle, EM_EXSETSEL, 0, LongInt(@(p.chrg)));
strURL := RichEdit1.SelText;
ShellExecute(Handle, 'open', PChar(strURL), 0, 0, SW_SHOWNORMAL);
end
end
end;
inherited;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
mask: Integer;
begin
mask := SendMessage(RichEdit1.Handle, EM_GETEVENTMASK, 0, 0);
SendMessage(RichEdit1.Handle, EM_SETEVENTMASK, 0, mask or ENM_LINK);
SendMessage(RichEdit1.Handle, EM_AUTOURLDETECT, Integer(True), 0);
RichEdit1.Text := 'Eksperten'#13#10 +
' Site is located at
www.eksperten.dk Welcome to our site.';
end;
procedure TForm1.GemClick(Sender: TObject);
begin
richedit1.Lines.SaveToFile('c:\temp\richedit.txt');
end;
procedure TForm1.HentClick(Sender: TObject);
begin
richedit1.Lines.LoadFromFile('c:\temp\richedit.txt');
end;
end.