Einzelnen Beitrag anzeigen

Dragon27

Registriert seit: 20. Nov 2003
Ort: Aßling
543 Beiträge
 
Delphi XE6 Enterprise
 
#1

Komponente erstellen || Ereignis überschreiben/löschen

  Alt 30. Nov 2009, 15:56
Hallo,

ich möchte die Socketkomponenten ein wenig modifizieren und meinen Bedürfnissen anpassen. Deshalb möchte ich ausgehend von diesen neue Komponenten erstellen. Nun bin ich noch nicht sehr weit gekommen

So sieht derzeit mein Code aus:

Delphi-Quellcode:
unit BrClient;

interface

uses
  SysUtils, Classes, ScktComp,ClientTypen;

type
  TBRClient = class(TClientSocket)
  private
    { Private-Deklarationen }
    FConnectionState: TConnectionState;
    FOnBRFehler: TFehlerEvent;

    Procedure AddError(Fehlernummer:Integer;Beschreibung:String);
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    procedure Connect(PHost:string; PPort:Integer);
  published
    { Published-Deklarationen }

   property ConnectionState: TConnectionState read FConnectionState;
   property OnBRFehler: TFehlerEvent read FOnBRFehler write FOnBRFehler;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('BRSC', [TBRClient]);
end;

Procedure TBRClient.AddError(Fehlernummer:Integer;Beschreibung:String);
begin
if Assigned(OnBRFehler) then
      OnBRFehler(Fehlernummer,Beschreibung);
end;

Procedure TBRClient.Connect(PHost:string; PPort:Integer);
begin
 FConnectionState:=csPending;
 Host:=PHost;
 Port:=PPort;
 if (Host='') or (Port<=0) then begin
   AddError(0,'Host oder Port wurden nicht gesetzt!');
   exit;
 end;
 Open;
end;

end.
Anstatt nun ein neues Ereignis (so wie ich das gemacht habe mit OnBRFehler) zu setzten würde ich gerne das OnError Ereignis überschreiben, das eigentlich schon vorhanden ist. Mit override funktioniert das ganze leider nicht

Danke für Eure Hilfe!
Delphi is ......... DELPHI!!
  Mit Zitat antworten Zitat