Bilder extern ins Programm laden
-
Hallo,
wie mache ich es das ich externe Bilder während der Laufzeit im Programm anzeigen kann?
Ich habe ein Fenster und eine Liste bei der ich den Bildernamen auswähle. Nun soll rechts daneben meine Bild erangezeigt werden.
Die Komponente Image zeigt ein Bild an wenn ich es vor dem Programmstart schon festlege welches Bild gezeigt werden soll.
Welche Möglichkeiten gibts da noch?
mfg martin
-
TImage::Picture::LoadFromFile
-
vielen dank! gibts auch ne möglichkeit das die bildgröße automatisch skaliert wird?
-
martinw schrieb:
vielen dank! gibts auch ne möglichkeit das die bildgröße automatisch skaliert wird?
Image1->Stretch = true;
Dann kannst du die größe über
Image1->Height = ...;
und
Image1->Width = ...;
beeinflussen.
-
Zur Entwicklungszeit ist es kein Problem in eine TImage-Komponente auch JPEG-Bilder zu laden.
Jedoch bekomme ich dann zur Laufzeit die Meldung: "Undefined File-Extension (.jpg)"!
Die Möglichkeit ein Objekt als TJPEGImage zu erstellen habe ich auch probiert.
Dann bekomme ich aber bereits beim Kompilieren die Meldung "cannot convert TJPEGImage to TPicture".Kann mir einer sagen, warum das zur Entwicklungszeit geht und zur Laufzeit nicht?
Oder hat vielleicht sogar einer einen Tip, wie ich das bewerkstellige?
-
Sorry, habe gerade eine Lösung gefunden.
Falls jemand dasselbe Problem hat, so funktioniert es bei mir:
// Neues JPEG-Objekt instanziieren TJPEGImage *my_jpeg = new TJPEGImage(); // JPEG-File in Objekt laden my_jpeg->LoadFromFile("D:\Eigene Dateien\Eigene Bilder\meinbild.jpg"); // JPEG-Image in TImage-Komponente darstellen Image1->Picture->Assign(my_jpeg);Das setzt natürlich voraus, daß man über
#include <jpeg.hpp>die entsprechende TJPEGImage-Klasse eingebunden hat...
Wie gesagt, bei mir läuft es so.
Für Verbesserungsvorschläge bin ich aber immer dankbar...
-
Hier ist ein Vorschlag: nächstes Mal zuerst in der FAQ nachsehen.
