Thema: Delphi RichLabel?

Einzelnen Beitrag anzeigen

BAMatze

Registriert seit: 18. Aug 2008
Ort: Berlin
759 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: RichLabel?

  Alt 20. Mai 2009, 10:06
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
  Mit Zitat antworten Zitat