Einzelnen Beitrag anzeigen

hsbc

Registriert seit: 28. Jan 2004
Ort: Krems/Donau
404 Beiträge
 
Delphi 7 Professional
 
#3

Re: Form ist während OnActivate noch nicht sichtbar

  Alt 15. Nov 2006, 16:10
Ich hab schon alles probiert, vor dem Timer, nach dem Timer. Ich hab auch schon statt dem Timer eine selbstgeschriebene Pause-Funktion verwendet, es ist immer das gleiche. Die Form wird erst nach dem vollständigen Ablauf der 5 Sekunden angezeigt.

Hier ist z.B. meine Pause-Funktion und die FormActivate:

Delphi-Quellcode:
function TForm.Pause(Zeit: LONGINT): BOOLEAN;
var StartZeit: LONGINT;
begin
  // Zeit = Anzahl Millisekunden Pause
  Abgebrochen := FALSE;
  Startzeit := GetTickCount;
  repeat
    Application.ProcessMessages;
    IF Abgebrochen THEN Zeit := 0;
  until (GetTickCount - Startzeit > Zeit) or (Zeit = 0);
  Result := NOT Abgebrochen;
end;


procedure TForm.FormActivate(Sender: TObject);
begin
  // ... Initialisierung verschiedener Parameter
  // ...
  if Pause(5000) then // Machweiter;
  ShowMessage('OK');
end;
Das "OK" kommt erst nach dem Ablauf der 5 Sekunden und danach wird erst die Form gezeichnet.


So------- der Fehler ist jetzt behoben. War meine Schuld. Hatte bei der Form borderstyle auf bsDialog eingestellt und das geht das nicht.




mfg
Herbert
  Mit Zitat antworten Zitat