![]() |
TurboDelphi hängt sich beim Speichern von ImageList auf
Hallo zusammen,
ich habe ein Problem mit einer ImageList. Ich habe diese ImageList vorher im Projekt schon verwendet, und wollte nun die einfachen Skizzen in ihr durch richtige Grafiken ersetzen. Das Problem ist: Die neuen Grafiken sind in Ausmaß und Bittiefe größer. Die alten waren alle 150x75 px und 8 Bit, die neuen sind alle 300x180 px und 24 Bit. Wenn ich nun alle alten Bilder aus der ImageList rauswerfe und das erste neue einfüge, passiert noch nichts. Sobald ich in Turbo Delphi aber auf "Speichern" oder "Kompilieren" klicke, reagiert es nicht mehr und ich muss den Prozess mit dem Taskmanager beenden. Es ist egal, ob ich nur ein neues oder alle neuen Bilder in die ImageList eingefügt habe. Gibt es irgendeine maximale Größe für die Bitmaps, die man in ImageList-Komponenten speichern darf? Ich habe dieselbe Grafik auch schon in einem normalen Image, das funktioniert einwandfrei. Chris Edit: ich glaube, ich hab den Fehler gefunden. ImageList.ImageSize - maximum ist 256 für Höhe oder Breite. Habe ich zwar aus einem .NET Forum, aber es könnte gut sein, dass hier dasselbe vorliegt. Zumindest stürzt TD nicht ab, wenn ich die Größe auf 256 setze, aber bei 257 schon. ![]() |
AW: TurboDelphi hängt sich beim Speichern von ImageList auf
Wieviele Bilde willst d denn in dieser Liste ablegen?
PS: Du weißt aber, daß die TImageList von Delphi alle Bilder in einem einzigem Bitmap verwaltet? Und ein Bitmap hat auch irgendwo seine Grenzen. Beim verändern der Liste (hinzufügen/löschen von Bildern) sind also ganz schöne Speicheroperationen nötig, vorallem bei vielen und/oder großen Bildern. Auch beim Zugriff auf ein Bild wird dieses jedesmal erst aus dem großen Bitmap rauskopiert. Das mit dem 256 könnte uch gut sein, denn intern sollte .Net (unter Windows) ebenfalls die selbe WinAPI nutzen. ![]() |
AW: TurboDelphi hängt sich beim Speichern von ImageList auf
Sind nicht viele, nur 9 Stück. Habe jetzt die Größe reduziert auf 150x90. Das geht wunderbar und reicht auch noch :)
Chris |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:46 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