Einzelnen Beitrag anzeigen

guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#1

Aktion ausführen nachdem Frame sichtbar wurde

  Alt 10. Dez 2007, 09:29
Hmmmm, ich bin grad etwas verwirrt, weil das was eben noch funktionierte, nun nicht mehr klappt.

Folgendes Problem:

Ich habe einen Frame, auf welchem eine Importroutine durchgeführt und visualisiert wird.

Diesen Frame rufe ich in einer Aktion aus dem Hauptformular auf. Das wird hier so gemacht, weil es zwei Arten von Frames gibt, einmal die, die sofort erzeugt werden und im Speicher verbleiben und zu anderen die, die bei Bedarf erzeugt und wieder freigegeben werden.

Delphi-Quellcode:
procedure TdmGlobal.acImportExecute(Sender: TObject);
begin
  if AlwaysCreatedFrame <> nil then AlwaysCreatedFrame.Parent := nil;
  FreeAndNil(TemporaryFrame);
  AlwaysCreatedFrame := fImport;
  with AlwaysCreatedFrame as TfImport do
  begin
   Parent := MainParent;
   Application.ProcessMessages; //<== Das hatte eigentlich mal funktioniert
   ImportDBF;
  end;
end;
Mein Problem ist nun, dass ich dem Frame den Parent zuweise, die Routine ImportDBF startet und der Frame noch nicht angezeigt wird. Bisher hatte das mit dem Application.ProcessMessages irgendwie funktioniert, jetzt aber nicht mehr. Was nu? Wie geht es besser?
  Mit Zitat antworten Zitat