Autor Beitrag
muschelschubser
Hält's aus hier
Beiträge: 11

Win 2000, Win XP
D7 Prof
BeitragVerfasst: Mi 27.07.05 10:59 
Hallo Leute,

ich bin noch nicht so besonders firm in eventgesteuerter Programmierung. Ich habe ein EditControl, welches mit einem OnExit Ereignis versehen ist, ungefähr so:

Irgendwo oben:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
type
   TFormXXX = class(TFormMDIChild_Basic)
...
        TimeAPS: TAdvMaskEdit;
...


Und dann später...
ausblenden Delphi-Quelltext
1:
2:
3:
4:
procedure TFormXXX.TimeAPSExit(Sender: TObject);
begin
   TimeExit(TimeAPS, 'ARRIVAL_PILOTSTATION_DATE');
end;


Ja, kennt wahrscheinlich jeder. Nun taucht folgendes Problem auf:

Das OnExit Ereignis wird nicht ausgelöst! Weder durch TAB, noch durch ENTER, noch durch klicken mit der Maus auf ein anderes control.

Ich bin etwas baff, da diese Methode schon mal funktioniert hat (und ich mich natürlich nicht erinnern kann, was ich geändert habe (aka "Ich habe nichts gemacht")) und ich mir gerade auch überhaupt nicht vorstellen kann, warum das Ereignis nicht ausgelöst wird.

Wie ich überhaupt auf die Idee komme, das es nicht ausgelöst wird? Naja, ich habe da einen Breakpoint gesetzt, der aber nie aktiv wird und die angegebene Prozedur (TimeExit) wird auch nicht aufgerufen (da ist noch mal ein Breakpoint gesetzt).

Ideen zu meinem Problem?

Dank im vorraus,

schubser
Lannes
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2352
Erhaltene Danke: 4

Win XP, 95, 3.11, IE6
D3 Prof, D4 Standard, D2005 PE, TurboDelphi, Lazarus, D2010
BeitragVerfasst: Mi 27.07.05 12:09 
Hallo,

ist das Event TimeAPSExit der Komponente TimeAPS im OI eingetragen?

_________________
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
muschelschubser Threadstarter
Hält's aus hier
Beiträge: 11

Win 2000, Win XP
D7 Prof
BeitragVerfasst: Mi 27.07.05 13:48 
Titel: Sorry, vergessen...
Hallo Lannes,

sorry hab ich vergessen zu erwähnen, natürlich ist sie im OI zugewiesen. Ich habe sogar schon einmal die Methode komplett gelöscht, kompiliert, neuangelegt, wieder kompiliert aber nichts zu machen, gleiches Verhalten.

Das interessante daran ist, es ging vor ein paar Tagen noch :evil:

Ich werde nun einmal die ganze Komponente löschen und dann weiterschauen.



schubser
muschelschubser Threadstarter
Hält's aus hier
Beiträge: 11

Win 2000, Win XP
D7 Prof
BeitragVerfasst: Mi 27.07.05 15:18 
Titel: Vergesst es Leute...
Moin,

Wie gesagt, bin noch nicht besonders firm in Ereignisprogrammierung, aber der Fehler war nun eigentlich zu einfach:

Ich hab' in einer anderen Klasse den OnExitHandler überschrieben... :autsch: :autsch: :autsch:


Ich gehe jetzt 50x "Du sollst erst denken und dann programmieren" ans Whiteboard schreiben...


Danke an alle,

schubser