AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Bester Zeitpunkt zum Zugriff auf WinControls etc.
Thema durchsuchen
Ansicht
Themen-Optionen

Bester Zeitpunkt zum Zugriff auf WinControls etc.

Ein Thema von Satty67 · begonnen am 22. Feb 2009 · letzter Beitrag vom 23. Feb 2009
 
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#1

Bester Zeitpunkt zum Zugriff auf WinControls etc.

  Alt 22. Feb 2009, 22:32
Hallo,

bisher habe ich WinControls im onCreate des jeweiligen ParentForm initialisiert.

Manche WinControls benötigen aber Daten aus einem anderen Form/DatenModul (bei mir meist nur das DatenModul). Die hab' ich dann im ParentForm.onActivate initialisiert (über Bool nur einmaliger Durchlauf der Initialisierung). Zumindest ging ich bisher davon aus, das MainForm.onActivate erst eintritt, wenn alle anderen Fenster samt enthaltener Objekte fertig initialisiert sind.

Jetzt hatte ich folgenden Fall:

MainForm mit DBGrid. Wird via Datasource/Query/Connection gefüllt, die alle in einem Datenmodul liegen.

Beim Start dann Peng... Zugriffsverletzung. Offenbar ist bei MainForm.onActivate eines der Datenzugriffs-Objekte im DatenModul noch nicht fertig initialisiert. Eine Abfrage, ob das entsprechende Datenzugriffs-Objekt bereit ist, verzögert wegen der nötigen Schleife den Programmstart erheblich.

Ich hab' zwei Alternativen getestet:

1) Timer im MainForm ruft eine Methode auf, die die Initialisierung vornimmt (die vorher in MainForm.onActivate war)
2) Application.onActivate enhält jetzt den Code von MainForm.onActivate

Beide Versionen funktionieren.

Wann ist sichergestellt, das alle Objekte aller automatisch erzeugten Fenster fertig erzeugt sind?
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:35 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz