![]() |
Überprüfen ob Bild geladen wurde
Hey Guys
Möchte überprüfen ob ein Bild komplett geladen wurde. Lade das Bild mit "Picture.LoadfromFile". Bild isn jpeg falls das wichtig is ;-) Gibts da ne einfache Möglichkeit? Hab leider nix gefunden :-( Danke schonma |
AW: Überprüfen ob Bild geladen wurde
Die JPEG Komponente sollte ein entsprechendes Ereignis haben.
|
AW: Überprüfen ob Bild geladen wurde
Warum ein Ereignis? Nach dem LoadFromFile ist das Bild doch komplett geladen, oder nicht? :gruebel: Wird unter D2 asynchron geladen?
|
AW: Überprüfen ob Bild geladen wurde
Ein JPEG kann auch progressiv komprimiert sein, dann wird es nach und nach geladen. Allerdings sollte die Methode erst nach dem vollständigen laden zurückkehren. Also ist es geladen, wenn die nächste Befehlszeile ausgeführt wird.
|
AW: Überprüfen ob Bild geladen wurde
Das meinte ich ja :thumb: Aber vielleicht gibts ja auch eine Komponente die das eben asynchron macht. Dann sollte es wahrlich ein Ergebnis geben. Hatte gerade nur an die Standardkomponente TImage (bzw. TPicture) gedacht.
|
AW: Überprüfen ob Bild geladen wurde
Hey
Also leider ist es nicht so das fertig geladen is wenn die nächste Zeile abgearbeitet ist. Das macht einfach weiter. Ein Ereignis hab ich leider nicht gefunden :-( |
AW: Überprüfen ob Bild geladen wurde
Was verwendest du denn für eine Komponente? Und was sagt die Dokumentation dazu?
|
AW: Überprüfen ob Bild geladen wurde
Das kann nicht sein. Sobald LoadFromFile() zuende ist, gab es entweder eine Exception, oder das Bild ist geladen worden.
Pack mal hinter das Laden ein
Delphi-Quellcode:
und danach erst den folgenden Code... Ist mal so ins blaue geraten.
Application.ProcessMessages;
|
AW: Überprüfen ob Bild geladen wurde
Hey
Verwende ein "TImage" In der Docu find ich irgendwie nix :-( Such ich an der falschen Stelle? "Application.ProcessMessages" hat leider nicht geholfen. |
AW: Überprüfen ob Bild geladen wurde
TImage kann JPEGS laden? Welche Delphi Version hast du?
|
AW: Überprüfen ob Bild geladen wurde
TImage.Picture kann ja alles laden, was als Grafik registriert wurde.
Lädt scheinbar auch asynchron, folgender Code zeigt "Load" vor der ersten Prozent-Angabe:
Delphi-Quellcode:
Womit dann auch klar sein sollte, womit man das komplette Laden prüfen kann.
procedure TForm1.Button1Click(Sender: TObject);
begin if OpenPictureDialog1.Execute() then Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName); Memo1.Lines.Add('Load') end; procedure TForm1.Image1Progress(Sender: TObject; Stage: TProgressStage; PercentDone: Byte; RedrawNow: Boolean; const R: TRect; const Msg: string); begin Memo1.Lines.Add(IntToStr(percentDone)) end; OnProgress scheint aber nicht bei allen Grafiktypen aufgerufen zu werden. Auch je nach Typ anders (GIF fast schon mehrmals pro 1%, JPG bei 0% und bei 100%, BMP scheinbar überhaupt nicht, nicht einmal bei 100% :gruebel: ) |
AW: Überprüfen ob Bild geladen wurde
Hey
Jip kann es wenn man die uses "jpeg" benutzt gehts. Hab Delphi 2005. Christoph |
AW: Überprüfen ob Bild geladen wurde
Laut Onlinehilfe:
Zitat:
|
AW: Überprüfen ob Bild geladen wurde
Hey
Thanks Satty67, OnProgress funktioniert! Allerdings ist da nochn kleines Problem. Anscheinend wird es nicht immer aufgerufen, weis nicht genau woran es liegt. Ne Idee? Incremental Display hab ich ma auf true gemacht, ändert aber an dem anderen Problem leider nichts :-( |
AW: Überprüfen ob Bild geladen wurde
Ok habs rausgekriegt.
Problem war das das Image invisible war. Da wird die OnProgress wohl nicht aufgerufen. Kann man das irgendie machen das dass trotzdem geht? Würds gerne auf invisible haben bis es fertig geladen ist. THX |
AW: Überprüfen ob Bild geladen wurde
Keiner ne idee??
|
AW: Überprüfen ob Bild geladen wurde
Kannst Du evtl. ein anderes Control drüberlegen und das Image nach dem Laden mit BringToFront nach vorne holen?
|
AW: Überprüfen ob Bild geladen wurde
Hey
Hab das mit nem anderen Control mal versucht aber irgendwie geht es nicht. Jedesmal wenn die beiden nebeneinander liegen gehts. Aber sobald sie übereinander liegen gehts nicht mehr :-( Nen Tipp? |
AW: Überprüfen ob Bild geladen wurde
Keiner noch ne andere Idee? :-(
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:00 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 by Thomas Breitkreuz