Dynamiczne dodawanie i usuwanie elementow

0

dokladnie jak w temacie, w sumie to tworzyc umie ale mam problemy z usuwaniem, niestety musze je zniszczyc, usnac, wywalic, bog jeden wie co, byle przestaly istniec (labele, checkbox'y i edity) nie moge tego przenosic na jakas inna forme bo to zajmuje pamiec, a ja na raz tworze o 40 labeli 20 chceckbox'ow i 20 editow, wiec bo przenoszeniu na nna forme z trzy razy (robie to za kazdym razem jak pokazuje forme) moze to troche rosnac.. prosze o pomoc.. w sumie gdzies byl artykol o tym ale teraz nie moge go znalezc..

0

NazwaObiektu.Free;

0

with TLabel('label_nazwa') do
destroy
end;

w label nazwa wpisz nazwę usuwanego komponentu, jak masz ich 30 to wcześniej daj
for I:=1 to 30 do
with Tlabel('label' + InToStr(i)) do
...

0

Nie destroy, tylko Free

cytat z helpu:
Do not call Destroy directly. Call Free instead. Free verifies that the component is not nil, and only then calls Destroy.

0

Nie destroy, tylko Free

cytat z helpu:
Do not call Destroy directly. Call Free instead. Free verifies that the component is not nil, and only then calls Destroy.

A w Encyklopedii jest to już po polsku :)

Ale znając Larduxa, to raczej nie chodzi o tak błahy problem. Zapewne problemem jest usunięcie, jeżeli nie ma się zmiennej skojarzonej z tym obiektem. Jeżeli znasz nazwy tych komponentów to przez FindComponent możesz znaleźć i usunąć.

A co do tego co spin podał, to jako parametr nie należy podawać nazwy labela, a obiekt (to co pokazał to jedynie rzutowanie stringa na obiekt, co w tym wypadku jest bezsensem)

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