Katalog filmowy - problem historii

0

Witam !!!

Od jakiegoś czasu pisze sobie katalog filmowy na zaliczenie przedmiotu.

Ostatnio dowiedziałem się że musi on zawierać listę jednokierunkową. No więc wpadłem na pomysł zrobienia historii ostatnio otwieranych pozycji.

Pomysł prosty.

  • po każdym kliknięciu na pozycję filmu do listy dodaje sie kolejna pozycja z tytułem filmu
  • gdy klikam na przyciski next bądź prev dzieje sięto samo...

i teraz gdy klikam na jakis button Historia to otwiera sie listbox i tam mają się pojawiać te tytuły w odwrotenj kolejności (od tyłu).
No i z tym jest problem...

mam kodzik który tworzy listę:

 
begin
    New(Cur);
    Cur^.Next := nil;
    Cur^.Dane := lista_tyt.items[lista_tyt.itemindex];  // przypisanie nazwy danej pozycji (string)
    if first = nil then
     begin
      first := Cur;
      Last := first;
     end else begin
      Last^.Next := Cur;
      Last := Cur;
     end;
   end;

to działa... ale dodawanie tych elementów potem do listboxa juz mi nie działa wiec nawet nie podaję kodu...
myślałem o pętli while ale nie wiem dokładnie jak to dkończyć...

Bardzo bym prosił o pomoc...

0

Właśnie jak coś nie działa, to daj kod.

0

oto kod do procedury dodającej elementy do listboxa ...

var
Atlist:wsk;
begin
    form5.show;
    AtList := first;
    while AtList <> nil do
       begin
      form5.Lista.Items.add(AtList^.Dane);
      AtList := AtList^.Next;
  end;
end;
 

tylko dodaje jedynie ostatnio kliknięty element... czyli jakby ostani element listy:/
a chciałęm by dodawało się wszystkie lementy od ostatniego do pierwszego...
jakby ktoś mógł jakos pomóc to byłbym zobowiązany

1 użytkowników online, w tym zalogowanych: 0, gości: 1