Einzelnen Beitrag anzeigen

Benutzerbild von glunzl
glunzl

Registriert seit: 21. Mär 2004
Ort: Reinbek
119 Beiträge
 
Delphi 7 Professional
 
#1

Vererbung von Ereignissen

  Alt 13. Aug 2006, 21:36
Hallo!

Ich bastel mir gerade ein Panel, auf dem dann ein Label erscheint. Panel mit Label (war mal Edit) drauf

Nun stehe ich vor dem nächsten Problem. Ich möchte, im OnResize Event des Panels die Labelgröße ändern. Vorgestellt hatte ich mir das wie folgt:
Delphi-Quellcode:
unit DatPanel;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type TDatPanel = class(TPanel)
  private
    fLabel1 : TLabel ;
  public
    constructor Create(AOwner: TComponent); override ;
    procedure PanelResize(Sender: TObject); override ; // [FEHLER] Methode 'PanelResize' nicht in Basisklasse gefunden
  end ;


implementation

constructor TDatPanel.Create(AOwner: TComponent);
begin
  inherited;
  fLabel1 := TLabel.Create(self);
  with fLabel1 do begin
    Parent := self ;
    Top := 2 ;
    Left := 2 ;
    Font.Size := 8 ;
    Caption := 'Hallo' ;
    end ;

end;
procedure TDatPanel.PanelResize(Sender: TObject);
begin
  inherited ;
  fLabel1.Width := Parent.ClientWidth div 2 ;
end;

end.
Es komt immer zu dem Fehler "[FEHLER] Methode 'PanelResize' nicht in Basisklasse gefunden" in der kommentierten Zeile. Wie komme ich denn an den richtigen Methodennamen des OnResize Events heran? In der ExtCtrls.pas finde ich diese Methode nicht.

Auf "procedure PanelResize(Sender: TObject);" kam ich, indem ich ein Panel als Komponente auf eine Form gelegt habe und dan den Eventhandler bearbeitet habe. Analog dazu habe ich das in meiner Unit gemacht, aber das funzt nicht.

Tipps, Ratschläge?

Gruß und Dank!
glunzl
Michael
--
10 Jahre Step5 entschuldigen hoffentlich meinen Programmierstiel!
  Mit Zitat antworten Zitat