Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen (https://www.delphipraxis.net/157558-delphi-2007-timagelist-mit-groesseren-bildern-aufhaengen.html)

Mike_ 16. Jan 2011 17:44


Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

um es als Testfall darzustellen habe ich das Problem stark "eingekreist".

IDE: Delphi 2007 Pro
OS: XP Pro SP3.

Ich habe ein neues Formular erstellt, eine TImageList hinauf gepackt und im Objektinspector Width & Height jeweils auf 300 gesetzt.

Nun habe ich ein Bild mit 500x500 Pixeln in die TImageList Komponente hinzugefügt.

Sobald ich das leere Formular mit der TImageList Komponente jedoch speicher durch "Alles speichern" oder versuche es zu kompilieren, regt sich Delphi 2007 nicht mehr.

Könnt ihr den Fehler bei euch reproduzieren ?
Was kann ich dagegen tun ?


Anmerkung:
Wenn ich die Komponente auf z.B. 250x250 einstelle geht es noch...

Google hat mir folgendes gezeigt, worin aber keine Lösung zu stande kam:
http://entwickler-forum.de/showthread.php?t=25235
http://www.computerbase.de/forum/sho...d.php?t=458419

Edit://
Habe euch mal ein 500x500 Bild angehangen.

Ich habe nun weiter getestet, die Höhe kann auch auf 500 eingestellt sein, dass.
Sobald die Breite aber größer als 256 ist, kann Delphi nicht mehr speichern und reagiert nicht mehr...

----
Gibt es eine Alternative Bilder hereinzuladen um diese dann durch ein TImage laden zu lassen, außer 10000 Timages auf das Formular zu packen und die zu Hiden, welche man nicht braucht ?

Net7 16. Jan 2011 18:09

AW: Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen
 
TImage und TImageList zur Laufzeit erstellen, damit umgehst du das "10000 Timages auf das Formular zu packen".

Bug oder gewollt weiß ich nicht aber dieses Phänomen ist bekannt. D5 und D7 hatten das auch.

himitsu 16. Jan 2011 18:35

AW: Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen
 
http://www.delphipraxis.net/157159-t...elist-auf.html

Die Breite/Höhe ist auf ein Byte (1..256) begrenzt.

Mike_ 16. Jan 2011 21:28

AW: Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen
 
Zitat:

Zitat von Net7 (Beitrag 1075097)
TImage und TImageList zur Laufzeit erstellen, damit umgehst du das "10000 Timages auf das Formular zu packen".

Bug oder gewollt weiß ich nicht aber dieses Phänomen ist bekannt. D5 und D7 hatten das auch.

Diese Lösung funktioniert, danke.

Heißt das aber im Umkehrschluss:

Wenn ich z.B. ein Programm schreibe mit einer Form, welches aber verschiedene "Teamplates" hat, nachdem mit welchem Parameter das Programm aufgerufen wurde, muss ich jedes einzelne Templatebild als .bmp in eine Verzeichnis stopfen ?

Es funktioniert so wie du sagtest, allerdings wäre in meinem Konkreten Fall

Image1.Picture.Bitmap.LoadFromFile()

die kleinere und einfacher Methode... ich dachte man kann das über die Imagelist umgehen und nicht alle Bilder in einem extra Directory zu haben...

Gibt es keine Möglichkeit die Bilder in eine Komponente zu packen und von dort aus herauszuladen ?

Bernerbaer 16. Jan 2011 21:36

AW: Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen
 
Wie wärs die Bitmaps in ein resource file abzuspeichern und in die Programmdatei einzubinden?

Mike_ 16. Jan 2011 22:05

AW: Delphi 2007 -> TImageList mit größeren Bildern -> Aufhängen
 
Zitat:

Zitat von Bernerbaer (Beitrag 1075150)
Wie wärs die Bitmaps in ein resource file abzuspeichern und in die Programmdatei einzubinden?

Der Hammer, vielen Dank :thumb:

http://www.delphipraxis.net/264-wie-...e-dateien.html


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz