AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Images laden

Ein Thema von len123 · begonnen am 2. Sep 2012 · letzter Beitrag vom 10. Sep 2012
Antwort Antwort
len123

Registriert seit: 3. Aug 2012
6 Beiträge
 
#1

Images laden

  Alt 2. Sep 2012, 21:03
Hallo zusammen
ich hab ein ordner mit ganz vielen Fotos, die dann alle, in der FormCreate Prozedur in jeweils ein image auf meiner form geladen werden.
Nur is das lästig jedesmal jedes mal:
Code:
Image1.Picture.LoadFromFile('Bild1.jpg');
zuschreiben, wen man 60 bilder hat.
Kann man das nicht auch anders machen?
Ich denke so in der Richtung:
Code:
procedure TForm1.FormCreate(Sender: TObject);
var i: Integer;
begin
for i := 1 to 60 do
Image1.Picture.LoadFromFile('Bild'+IntToStr(i)+'.jpg'); //es bringt leider nichts weil man i nicht bei image einsetzen kann
i :=i + 1;
until i := 60
end;
Bzw. wie kann das programm ermitteln wie viele bilder in einem Ordner sind, und dann alle in die images laden?
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.336 Beiträge
 
Delphi XE2 Professional
 
#2

AW: Images laden

  Alt 2. Sep 2012, 21:12
Hallo,

mittels FindComponent kannst du Komponenten anhand des Names suchen.

Das würde dann etwa so aussehen:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
const
  Pfad = 'C:\derOrdnerderdieBilderbeinhaltet\';

var
  i: Integer;
  S: String;
  Image_Temp: TImage;

begin
  for i := 1 to 60 do
    begin
      //Image anhand des Namen suchen und in Temp-Variable laden
      Image_Temp := FindComponent(Format('Image%d', [i])) as TImage;

      //Dateiname aufbauen
      S := Pfad + Format('Bild%d.jpg', [i]);

      //Image und Datei vorhanden? - Datei in Image laden
      If Assigned(Image_Temp) and FileExists(S) then
        Image_Temp.Picture.LoadFromFile(S);
    end;
end;
Du solltest unbedingt den Pfad des Bildes mitangeben um sicher zu sein, dass das Bild auch wirklich gefunden wird.
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

AW: Images laden

  Alt 2. Sep 2012, 22:04
Du hast es geschafft 60 Images auf eine Form draufzubekommen?

Warum lädst du denn die Bilder nicht direkt in die Komponenten rein, also schon im OI?

PS: Es ist nicht so gut, wenn du relative Pfade nutzt, denn das Arbeitsverzeichnis muß nicht immer deinem Programmverzeichnis entsprechen.
Schau dir mal ExtractFilePath(ParamStr(0)) oder ExtractFilePath(Application.ExeName) an und verwende zukünftig nur noch absolute Pfade.
$2B or not $2B
  Mit Zitat antworten Zitat
len123

Registriert seit: 3. Aug 2012
6 Beiträge
 
#4

AW: Images laden

  Alt 8. Sep 2012, 16:22
hey vielen dank
das hilft mir weiter
@himitsu ich hab bei 30 aufgehört weil ich kein bock mehr hatte, aber ich werd mich da mal einlesen
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Images laden

  Alt 10. Sep 2012, 15:14
Warum auf ein Form klicken?

Speicher die Bilder doch in einer Resource-Datei

Mavarik
  Mit Zitat antworten Zitat
Benutzerbild von BMI
BMI

Registriert seit: 16. Jul 2010
58 Beiträge
 
Delphi 2 Desktop
 
#6

AW: Images laden

  Alt 10. Sep 2012, 17:06
Du hast es geschafft 60 Images auf eine Form draufzubekommen?

...
ist doch eigentlich einfach.
Shift und Kompo --- und dann nur 60x Klicken.
Oder mit For-schleife und dann dynamisch images-Kompos erstellen.

v.a. 60 images vielleicht sog noch mit 14 mpx Digicam-pictures gefüllt
(4320 x 3240, als BMP im RAM 42,0 MB )

macht auch gerade nur mal 2520 MB RAM.

paßt doch super. Bleiben auf nem modernen Standard-Spielerechner noch immer 29.480 GB frei.
eine Signatur? - in 2022? - WOZU ?!!!

Geändert von BMI (10. Sep 2012 um 17:10 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:45 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