Bild darstellen(TImage)

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Farix
Beiträge: 2
Registriert: Fr 16. Jan 2009, 19:55

Bild darstellen(TImage)

Beitrag von Farix »

Hallooo,
bin neu hier und habe eine Frage, die eher objektorientiert ist!
Wie bekomme ich ein beliebiges bild (z.B. bild1.jpeg) in einem TImage angezeigt.
Benötigt dies nur einen bestimmten Aufrufbefehl oder steckt da etwas mehr dahinter. Das Bild soll über einen Button bzw. eine editbox abgefragt werden und wenn man darauf klickt soll es im TImage angezeigt werden!
Danke schonmal für eure Hilfe!!.. [code=laz][/code]

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Bild darstellen(TImage)

Beitrag von Christian »

TImage.Picture.LoadFromFile() ??
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

KOBOLD Messring GmbH
Beiträge: 155
Registriert: Mi 22. Aug 2007, 14:52
OS, Lazarus, FPC: Mandriva Linux 2008 (L 0.9.28 FPC 2.2.4)
CPU-Target: 32Bit
Wohnort: 65719 Hofheim am Taunus
Kontaktdaten:

Re: Bild darstellen(TImage)

Beitrag von KOBOLD Messring GmbH »

Wenn Du es zur Laufzeit vom Dateisystem laden willst, dann nimm - genau wie Christian oben beschrieben hat - die Methode LoadFromFile (/vollstaendiger/pfad/zur/Datei.jpg), schau im Objektinspector unter Picture|TPicture, Schaltfläche [...] welche Formate Du laden kannst. Man sollte einen z.B. Dateiauswahldialog auf diese Formate begrenzen, oder nimm gleich den Bildauswahldialog, der kann auch Vorschau, sehr komfortabel, und dann LoadFromFile mit der Auswahl.

Willst Du hingegen eine vordefinierte Liste von Bildern gleicher Grösse (!), die Du zur Designzeit erstellst, dem Benutzer zur Auswahl anbieten, dann mach folgendes:
1.) Setze eine TImageList-Komponente auf das Formular
2.) Doppelklick auf die Komponente, lade die Bilder rein. Jedes Bild bekommt eine Nummer (von 0 an).
3.) Z.B. in ein ButtonOnClick-Event oder ListBoxOnClick-Event mach folgendes:
ImageList1.GetBitmap (nBildNr, Image1.Picture.Bitmap);
Bedeutet: Liebe ImageList, bitte setze das Bild mit der Nummer nBildNr (Deine Variable z.B. auch der ItemIndex aus einer ListBox) in die Instanz Image1 (Deine TImage-Komponente) zum Anzeigen.... ¡und schon ist das Bild sichtbar!
Funktioniert perfekt, habe ich selbst schon zigmal so gemacht.

Farix
Beiträge: 2
Registriert: Fr 16. Jan 2009, 19:55

Re: Bild darstellen(TImage)

Beitrag von Farix »

Okay, vielen vielen Dank für eure ausführliche Hilfe...werde es jetzt gleich mal in Angriff nehmen!

Antworten