W swoim programie mam komponent ListBox1 - uzupełniam go danymi z mojej listy dwukierunkowej (która jest oczywiście w pamięci programu) w taki sposób:
- Kod: Zaznacz cały
void wyswietl_calosc(osoba *temp)
{
while(temp)
{
Form1->ListBox1->Items->Add(temp->nazwa.c_str());
temp=temp->nastepny;
}
}
i wszystko jest ok, wyświetla się prawidłowo. Teraz jeśli chcę usunąć element z ListBoxa, to stworzylem sobie SpeedButtona i nadałem mu takie coś na OnClick:
- Kod: Zaznacz cały
void __fastcall TForm1::SpeedButton3Click(TObject *Sender)
{
ParentShowHint = false;
ShowHint=true;
ListBox1->Items->Delete(ListBox1->ItemIndex);
}
i też wszystko ok. Element z listy po zaznaczeniu i klknięciu buttona przestaje na liście widnieć. Jednak pojawia się pytanie, w jaki sposób usunąć element z listy dwukierunkowej? jak sprawdzić, który element został usunięty z ListBoxa i jego wywalić z pamięci (potrzebny by był np jego adres).
Proszę o pomoc.