Einzelnen Beitrag anzeigen

Benutzerbild von APP
APP

Registriert seit: 24. Feb 2003
Ort: Graz (A)
705 Beiträge
 
Delphi 7 Enterprise
 
#10
  Alt 5. Mär 2003, 19:49
@janjan
Zitat:
Hm, ich glaub ich hab dich falsch verstanden, ich dachte du wolltest wissen wie man feststellen kann ob eine Komponente per Drag and Drop oder dynamisch per TKomponente.Create erzeugt wurde...
Du hast es erfasst, genau das ist mein Problem!

Ich möchte im Constructor Create feststellen wann/wie die Kompo erstellt wurde, da ich, wenn die Kompo zur RunTime erstellt wurde,
den ExceptionHandler automatisch zuweisen möchte (und bei Bedarf Daten aus einer Ini-Datei laden). Ist die Kompo schon zur Designzeit aktiv, wird (zumindest habe ich das mit dem Debugger festgestellt) Loaded durchlaufen, hier kann ich die Kompo über die Eigenschaft Active ein/ausschalten (hier benötige ich die Daten aus der INI-Datei NICHT).

Delphi-Quellcode:
CONSTRUCTOR TFlappError.Create(Owner: TComponent);
BEGIN
   INHERITED Create(Owner);
   ...
   IF csDesigning IN ComponentState THEN // Komponente ist zur Designtime (=DragDrop) erstellt worden
      BEGIN
         ...
      END
   ELSE // Komponente ist zur Runtime (=dynamisch) erstellt worden
      BEGIN
         Application.OnException := onFlappException;
         ...
      END;
END;
Delphi-Quellcode:
PROCEDURE TFlappError.Loaded;
BEGIN
   INHERITED Loaded;
   IF Active THEN Application.OnException := onFlappException;
END;
Leider funktioniert ComponentState nicht.
Armin P. Pressler

BEGIN
...real programmers are using C/C++ - smart developers Delphi;
END;
  Mit Zitat antworten Zitat