![]() |
Animate Window wirkungslos??
Hi! Ist wohl eine Anfängerfrage, habe aber keine Erfahrung mit AnimateWindow.
Habe gerade versucht es zu verwenden und hab erstmal den Code aus dem SwissDelphiCenter übernommen, allerdings passiert bei mir rein gar nichts. Statt der erwarteten Animation, poppt das Fenster einfach normal auf, was habe ich falsch gemacht?
Code:
Form2.BringToFront;
AnimateWindow(Form2.Handle, 3000, AW_BLEND); Form2.Show; |
Re: Animate Window wirkungslos??
Hat denn keiner eine Ahnung wie das DIng funktioniert? :?
|
Re: Animate Window wirkungslos??
Such doch einfach mal in der MSDN:
![]() Es gibt einige Dinge, die verhindern, das AnimateWindow arbeiten kann. Vorallem solltest du den Returncode auslesen und mit GetLastError nachfragen ,was schiefgegangen ist. z.B. so:
Delphi-Quellcode:
if not AnimateWindow(Form2.Handle, 3000, AW_BLEND) then
RaiseLastWin32Error; // GetLastError abfragen und Exception werfen |
Re: Animate Window wirkungslos??
Hallo,
probiers doch mal so:
Delphi-Quellcode:
AnimateWindow(Form2.Handle, 3000, AW_BLEND);
Form2.BringToFront; Form2.Show; |
Re: Animate Window wirkungslos??
nö, geht leider nich, aber der Code Schnipsel war wie gesagt vom Delphicenter übernommen.
|
Re: Animate Window wirkungslos??
Wo rufst du denn den Code auf? In FormCeate?
So geht es:
Delphi-Quellcode:
Im OnShow aufrufen.
procedure TForm1.FormShow(Sender: TObject);
begin AnimateWindow(Form1.Handle, 3000, AW_BLend); end; |
Re: Animate Window wirkungslos??
Danke schonmal, also:
Wenn ich das Programm starte funktioniert die Blende beim ersten mal, danach nicht mehr, wieso? |
Re: Animate Window wirkungslos??
ICh habs so gemacht wie Luckie es beschrieben hat.
AnimateWindow(Form1.Handle, 3000, AW_BLend) in das OnShow ereignis und das Form1.BringToFront und Form1.Show ganz weggelassen, funktioniert Prima! |
Re: Animate Window wirkungslos??
Ja, bei mir funktionierts aber nur ein einziges mal :/
|
Re: Animate Window wirkungslos??
Abgesehen davon wird das Fenster nicht komplett aufgebaut, unten fehlt ein Abschnitt von schätzungsweise 150 pixeln.
|
Re: Animate Window wirkungslos??
Hilfe^^
|
Re: Animate Window wirkungslos??
Liste der Anhänge anzeigen (Anzahl: 1)
Hast du es mal mit einem neuen Programm versucht? Einfach mal AnimateWindow(Form1.Handle, 3000, AW_BLend) in ein neues Programm im OnShow Erreignis und schaun, was da passiert.
Probier mal mein Beispiel, das geht schneller... |
Re: Animate Window wirkungslos??
Zitat:
//Edit: Sorry, hab meine Augen grad erst aufgemacht aus dem Bett. Natuerlich im OnShow folgendes aufrufen:
Delphi-Quellcode:
...
SetFocus; for count := 0 to Pred(ControlCount) do if Controls[Count].Visible then Controls[Count].Repaint; |
Re: Animate Window wirkungslos??
Und AnimateWindow verträgt sich auch schlecht mit einem eingebautem Manifest. Zumindest bei meiner nonVCL - App war das so....
|
Re: Animate Window wirkungslos??
Ja scheint tatsächlich an der komplexität der formulare zu liegen, bei nur einem gehts ohne Probleme...
Bekomm esbei mir aber einfach nich gebacken... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz