Thema: Delphi Bilder in einer Liste

Einzelnen Beitrag anzeigen

tobi1701

Registriert seit: 16. Okt 2005
30 Beiträge
 
#1

Bilder in einer Liste

  Alt 16. Okt 2005, 21:25
hallo,

ich bin gerade dabei eine kleine datenbank für mich zu erstellen, ich habe eine lange pause in der programmierung hinter mir und nutze das auch, um wieder "reinzukommen".

so, ich habe folgendes problem. ich habe ein record erstellt (der datenbankeintrag), der text und bilder enthalten soll.

Delphi-Quellcode:
type
  pGameEntry = ^BasicGameEntry;
  BasicGameEntry = record
   Name,Genre,Rompath,Manualpath,System,Publisher: string;
   Description: TMemo;
   Rating,Published: byte;
   Picture: Array[1..4] of TPicture;
  end;


public
    GameEntry: pGameEntry;
    GameList: tList;

so. ich habe mir jetzt einen dialog erstellt, in dem ich die daten eintragen kann und bei klick auf "ok" werden sie der liste hinzugefügt.
das problem ist aber, dass die einträge ja nur pointer sind, also gar keine daten enthalten.
in dem dialog wähle ich bilder aus, die ich ja nicht so hinzufügen kann:
Delphi-Quellcode:
  new(Form1.GameEntry);
  Form1.GameEntry^.Name:=Edit1.Text;
  Form1.GameEntry^.Genre:=ComboBox1.Text;
  Form1.GameEntry^.System:=ComboBox2.Text;
  Form1.GameEntry^.Picture[1]:=Image1.Picture;
  Form1.GameEntry^.Picture[2]:=Image2.Picture;
  Form1.GameList.Add(Form1.GameEntry);
denn sobald sich das Image im dialog ändert, ändert sich natürlich auch das bild im eintrag der liste, da es ja nur ein zeiger darauf ist (merkwürdigerweise allerdings nicht der text, obwohl das ja auch ein pointer ist).

meine konkrete frage ist jetzt endlich: wie kann ich das realisieren?
wenn ich eine TImageList nehme, habe ich ja das problem mit der sortiereung. wenn ich meine liste nach namen, genre, oder jahr sortiere, ändert sich ja die reihenfolge der einträge (oder wenn ich einen eintrag entferne...). nicht aber die reihenfolge der einträge in der ImageList.

kann mir da bitte jemand helfen?

danke, tobias.

ps: ich benutze delphi 6.0 personal

[edit=Admin]Code in Delphi-Tags gesetzt. Künftig bitte selber machen, danke. Mfg, Daniel[/edit]
  Mit Zitat antworten Zitat