M. Behrendt
2015-04-27 09:03:32 UTC
Hallo!
Habe Folgendes sowohl in Lazarus als auch in Turbo-Delphi probiert:
[code]
procedure TForm1.FormActivate(Sender: TObject);
var i:byte;
begin
Form1.AlphaBlend:=true;
i:=0;
repeat
Form1.Alphablendvalue:=i;
sleep(10);
inc(i);
until i>255;
Form1.AlphaBlend:=false;
andereAnweisungen;
end;
[/code]
formstyle=fsStayonTop (auch fsNormal ändert nichts)
das ist die einzige Prozedur/Funktion im Programm, welches tatsächlich nur für diesen Test erstellt wurde.
FormActivate wird nach Starten der Anwendung (aus der IDE heraus) ganz offensichtlich immer und immer wieder ausgeführt.
Es gibt keinen anderen Aufruf für FormActivate und trotzdem läuft FormActivate in einer Endlosschliefe.
Die procedure andereAnweisungen; wird nie ausgeführt, ein dortiger Haltepunkt wird nie erreicht.
Frage: Wieso läuft FormActivate mehrfach?
Habe Folgendes sowohl in Lazarus als auch in Turbo-Delphi probiert:
[code]
procedure TForm1.FormActivate(Sender: TObject);
var i:byte;
begin
Form1.AlphaBlend:=true;
i:=0;
repeat
Form1.Alphablendvalue:=i;
sleep(10);
inc(i);
until i>255;
Form1.AlphaBlend:=false;
andereAnweisungen;
end;
[/code]
formstyle=fsStayonTop (auch fsNormal ändert nichts)
das ist die einzige Prozedur/Funktion im Programm, welches tatsächlich nur für diesen Test erstellt wurde.
FormActivate wird nach Starten der Anwendung (aus der IDE heraus) ganz offensichtlich immer und immer wieder ausgeführt.
Es gibt keinen anderen Aufruf für FormActivate und trotzdem läuft FormActivate in einer Endlosschliefe.
Die procedure andereAnweisungen; wird nie ausgeführt, ein dortiger Haltepunkt wird nie erreicht.
Frage: Wieso läuft FormActivate mehrfach?