Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Daten werden manchmal nicht angezeigt (https://www.delphipraxis.net/145786-daten-werden-manchmal-nicht-angezeigt.html)

Mandi Nice 8. Jan 2010 10:29

Datenbank: MS Access • Zugriff über: ADO

Daten werden manchmal nicht angezeigt
 
Hallöchen

Ich zeige Daten aus einer AccessDatenbank ( mittels ADOTable ) in einem Fenster in mehreren DBEdit-Felder an.

Es passiert nun zeitweise, dass wenn ich das Fenster aufmache keine Daten angezeigt werden.

Mein Verdacht :
Ich baue die Verbindung zur Datenbank (ADOTable.Open) erst bei OnShow des Fensters auf.
Ist das zu spät ? Steht vielleicht die Verbindung noch nicht wenn das Fenster angezeigt wird ?

Oder woran könnte es sonst liegen ?

Danke Euch.

hmg
Mandi

mkinzler 8. Jan 2010 10:59

Re: Daten werden manchmal nicht angezeigt
 
Ich würde mir den Einsatz eines DatenModuls überlegen

nahpets 8. Jan 2010 11:13

Re: Daten werden manchmal nicht angezeigt
 
Hallo,

mach mal hinter dem Query.open (oder so) ein Application.ProcessMessages rein. Beim OnShow kann ich mir schon vorstellen, dass dass Fenster eher da ist als die Daten und deshalb dieser Effekt auftreten könnte. (Ist aber nur geraten ;-))

hoika 8. Jan 2010 11:18

Re: Daten werden manchmal nicht angezeigt
 
Hallo,

ich packe das Anzeigen immer in das OnActivate.
Da das Ereignis aner nicht nur einmal erzeugt wird,
habe ich eine bFirstInForm (Boolean) Variable,
die wird im OnCreate auf True gesetzt und im OnActivate auf False, etwa so

Delphi-Quellcode:
// OnAfctivate
if bFirstInForm then
begin
  bFirstInForm:= False;

  LoadData;
end;
Natürlich wird das nicht in jedem Form immer wieder gemacht,
sondern in einem MasterForm -> Form-Vererbung.


Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:49 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