Einzelnen Beitrag anzeigen

ml-kuen

Registriert seit: 12. Dez 2005
6 Beiträge
 
#1

Ereignis einer neuen Klasse wird nicht ausgelöst?

  Alt 24. Okt 2009, 04:09
Hallo Leute,
suche verzweifelt nach dem Fehler. Hab sowas schon mal gemacht, aber komme diesmal irgendwie nicht weiter.

Ausschnitt meiner Klasse:
Delphi-Quellcode:
Type
  //...
  TScoreCharactersEvent = Procedure(Passwordlength: Integer; var Score: Integer; var OwnerScore: Boolean) of Object;

  TMLPasswordMeter = class(TComponent)
    Private
      fPassword: String;
      fScore: Integer;
      fCharacters: Integer;
      fOnScoreCharacters: TScoreCharactersEvent;
      Score4Characters: Integer;
      OwnerScoreCharacters: Boolean;
      //...
    Protected
      Procedure SetPassword(Password: String);
      //...
    Public
      Property Score: Integer read fScore;
      //...
    Published
      Property Password: String read fPassword write SetPassword;
      Property Characters: Integer read fCharacters;
      Property OnScoreCharacters: TScoreCharactersEvent read fOnScoreCharacters write fOnScoreCharacters;
      //...
    end

procedure Register;

implementation
//...
constructor TMLPasswordMeter.Create(AOwner: TComponent);
begin
  inherited;
  //...
  SetPassword('');
end;

procedure TMLPasswordMeter.SetPassword(Password: String);
Begin
  fPassword := Password;
  fCharacters := Length(fPassword);
  //...
  If Assigned(fOnScoreCharacters) then fOnScoreCharacters(fCharacters, Score4Characters, OwnerScoreCharacters);
  If Not OwnerScoreCharacters then Score4Characters := fCharacters * 4;
end;
Nach dem ich die Komponente in die Palette eingefügt und diese in mein Project benutze, erscheint beim Doppelklick auf das Ereignis im Objektinspector auch der Quelltext:
Delphi-Quellcode:
procedure TUserFrm.MLPasswordMeter1ScoreCharacters(Passwordlength: Integer; var Score: Integer; var OwnerScore: Boolean);
begin
  OwnerScore := true;
  Score := Passwordlength * 4;
end;
...aber das Ereignis wird nie aufgerufen, auch nicht wenn ich im Programm in die Eigenschaft Password schreibe.

Weis jemand einer Rat? Geh jetzt aber erst mal in die "Kiste".
Michael
Michael
  Mit Zitat antworten Zitat