warum nimmst nicht einfach ein RichEdit und stellst es auf ReadOnly (und Enabled auf False). Wenn dich dann noch der blinkende Cursor stört dann kannst du das so verschwinden lassen:
Delphi-Quellcode:
type
TProtokollForm = class(TForm)
RE_Protokoll: TRichEdit;
procedure FormCreate(Sender: TObject);
private
{ Private-Deklarationen }
FWndProc: TWndMethod;
procedure RichEditWndProc(var Msg: TMessage);
public
{ Public-Deklarationen }
end;
...
procedure TProtokollForm.RichEditWndProc(var Msg: TMessage);
begin
if Msg.Msg = WM_SETFOCUS then
begin
HideCaret(RE_Protokoll.Handle); // Cursor verstecken
Msg.Result := 0;
end else
FWndProc(Msg); // alte Fensterproceure aufrufen
end;
procedure TProtokollForm.FormCreate(Sender: TObject);
var iIndex: integer;
begin
FWndProc := RE_Protokoll.WindowProc; // alte Fensterproceure merken
RE_Protokoll.WindowProc := RichEditWndProc; // Fensterproceure auf eigene Fensterprocedure umbiegen
for iIndex := 0 to Protokoll.fProtokoll.Count-1 do RE_Protokoll.Lines.Add(Protokoll.fProtokoll.ValueFromIndex[iIndex]);
end;
Quellcode hierfür hab ich irgendwo in der
DP gefunden, wusste nur nicht mehr wo, deswegen schicke ich es so mit.
MfG
BAMatze
2. Account Sero