Announcement

Collapse
No announcement yet.

Procedure anspringen funktioniert nicht

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Procedure anspringen funktioniert nicht

    Hallo Entwicklerforum,

    ich bin neu hier und möchte mich gerne mit einem aktuellen Problem an euch wenden. Ich arbeite mit RadStudio 2009 Pro. Gegeben sind:

    1. Eine public deklarierte Procedure zur Auswertung der Passworteingabe:
    Code:
    ...  public  { Public-Deklarationen  }
      PROCEDURE EingabenAuswerten(Sender: TObject); ...
    
    implementation
    {$R *.dfm}
    PROCEDURE TFormUser.EingabenAuswerten(Sender: TObject);
    
    VAR ...
    BEGIN
    ...
    END;
    2. Ein Button-Ereignis:
    Code:
    procedure TFormUser.BitBtn_PassClick(Sender: TObject);
    begin
         EingabenAuswerten(Sender);
    end;
    3. Ein Tastaturereignis im Editfeld für die Anmeldung:
    Code:
    procedure TFormUser.Edit_UserKeyPress(Sender: TObject; var Key: Char);
    begin
         IF Key <> #13 THEN EXIT;
         Key := #0; {Sound unterdrücken}
         EingabenAuswerten(Sender);
    end;
    Betätige ich nun im Programm den Button zur Bestätigung, funktioniert alles einwandfrei. Drücke ich im Anmelden-Editfeld jedoch auf Enter (#13), passiert nichts. Setze ich einen Haltepunkt auf die erste Zeile der Procedure "EingabenAuswerten", kann ich beim Debuggen aber ganz deutlich sehen, daß diese Procedure nach Drücken von Enter im Editfeld angesprungen wird. Ich verstehe das nicht ...
    Zuletzt editiert von Perlsau; 19.05.2009, 06:49. Reason: zu große Schrift
    Die Tränen, die du nicht weinen willst, müssen andere für dich vergießen. (Frei nach: wer nicht leiden will, muß hassen.)

  • #2
    Drücke ich im Anmelden-Editfeld jedoch auf Enter (#13), passiert nichts.
    ganz deutlich sehen, daß diese Procedure nach Drücken von Enter im Editfeld angesprungen wird.
    Was passiert denn nun?
    Christian

    Comment


    • #3
      Hallo Christian,

      habe den Fehler gefunden: In der Prüfprocedur für die Anmeldung stand am Ende Form.CloseModal statt nur Form.Close. Dadurch wurde die Anmeldung zwar ausgeführt, das mit ShowModal aufgerufene Anmelde-Fenster schloß sich jedoch nicht und erweckte bei mir den Eindruck, daß nichts geschehen würde.

      Stunden für eine so einfache Sache geopfert ... (Nein, stimmt nicht, ich hab mich für ein paar Stunden vom Problem abgewendet und eben, angeregt durch deine kluge Frage, die Problematik teilweise erkannt.)
      Die Tränen, die du nicht weinen willst, müssen andere für dich vergießen. (Frei nach: wer nicht leiden will, muß hassen.)

      Comment

      Working...
      X