Einzelnen Beitrag anzeigen

Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: Bild in Image laden ohne Dateiendung anzugeben

  Alt 25. Jul 2010, 12:20
Ja, das geht. Stichwort: Delphi-Referenz durchsuchenFindFirst. Da gibt es in der Code-Library auch einen Code: FindAllFilesFindAllFiles, den du dir anpassen kannst. Gibst du als Maske *.* an, spielt die Dateiendung keine Rolle.

Nur was machst du, wenn es "Danyel.jpg" und "Danyel.bmp" gibt?

Wenn man diese Bilder aus einer ListBox auswählen kann, würde ich an deiner Stelle die zugehörigen Pfadangaben z.B. in einer TStringList hinterlegen, die du mit der ListBox synchronisierst.

Das könnte grob so aussehen:

Delphi-Quellcode:
// Bild in ListBox einfügen
ListBox.Items.Add('Danyel');
StringList.Add('Pfad zum Bild');

// laden
Image.Picture.LoadFromFile(StringList[ListBox.ItemIndex]);
Oder so in der Art. Sinnvoller wäre es natürlich, die GUI von den Daten zu trennen, sprich eine Funktion/Methode zu schreiben, der du als Parameter die entsprechenden Indizes o.ä. übergibst.

Wobei man die Daten evtl. auch direkt den ListBox-Items zuweisen kann. Da bin ich mir nicht ganz sicher. Aber ein Feld wie "Data", wie man es von TTreeNode kennt, gibt es hier meines Wissens nicht.
  Mit Zitat antworten Zitat