[Delphi] Dynamiczny Edit

0

W formie logowania w zalezności od spełnionych warunków tworzy mi sie dynamicznie pole Edit edPowtorzHaslo, w którym powinno się wpisac to samo co w edHaslo. Chcę do procedury OnExit pola edPowtórzHaslo podpiąc kod , który porównuje czy wpisano w obu polach to samo. Piszę tak:
Najpierw sprawdzam warunek i tworze dynamicznie pola:

 procedure TfmLogowanie.FormShow(Sender: TObject);
begin
  {sprawdza czy istnieje plik użytkowników}
  if not FileExists('setup.dat') then
   begin
     MessageDlg('Program uruchamiany jest po raz pierwszy!',mtWarning,[mbOk],0);
     btOK.Enabled:=False;
     PowtorzHaslo;
   end;
end;
 procedure TfmLogowanie.PowtorzHaslo;
{dynamicznie tworzy pola Label i Edit przy logowaniu}
var
  laPowtorzHaslo: TLabel;
begin
  fmLogowanie.Height:=268;  //zwiększenie rozmiaru formy
  laPowtorzHaslo := TLabel.Create(fmLogowanie);
  laPowtorzHaslo.Parent := fmLogowanie; //przypisanie rodzica
  laPowtorzHaslo.Font.Style:=[fsBold];
  laPowtorzHaslo.Caption := 'Powtórz hasło';
  laPowtorzHaslo.Left := 8;
  laPowtorzHaslo.Top := 185;
  edPowtorzHaslo := TEdit.Create(fmLogowanie);
  edPowtorzHaslo.Parent := fmLogowanie; //przypisanie rodzica
  edPowtorzHaslo.Left := 8;
  edPowtorzHaslo.Top := 203;
  edPowtorzHaslo.Width:=217;
  edPowtorzHaslo.TabOrder:=2;
end;

No i na koniec dla porównania piszę:

 procedure TfmLogowanie.edPowtorzHasloExit(Sender: TObject);
begin
  if edHaslo.Text=edPowtorzHaslo.Text then
   btOK.Enabled:=True
  else
   ShowMessage('źle');
end;

Zmienną edPowtorzHaslo zadeklarowaną mam jako zmienną globalną. Ale gdy wychodzę z kontrolki edPowtórzHaslo kod przy OnExit nie jest wykonywany. Co robię żle - poradźcie.

Pozdr. ;)

0

Nie przypisałeś chyba zdarzenia OnExit do dynamicznego edita.

edPowtorzHaslo.OnExit := edPowtorzHasloExit;
0

Dzięki!

[sciana] Jedna linijka a ile uciechy.

Pozdr. ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1