Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как убить все спрайты [Delphi]


Sewix ©   (2002-09-11 08:00:00) 

Работаю с DelphX на Delphi 6. Когда человек проигрывает хочу уничтожить все спрайты и инициализировать их заново. КАК УНИЧТОЖИТЬ ВСЕ СПРАЙТЫ


Владимир Васильев   (2002-09-11 14:24:00) [1]

если при создании спрайта ты в качестве Parent передавал не nil, а , напр., MainForm.SpriteEngine.Engine то Parent самостоятельно удалит всё:

For i:=1 to 5 do
With TGameUnit.Create(MainForm.SpriteEngine.Engine) do
begin
....
end;

то для удаления всех объектов :
MainForm.SpriteEngine.Engine.Clear;

Если же ты самостоятельно управляешь объектом (Draw, x,y, ....), - передаёшь nil -
Progress2:=TProgress.Create(nil);
with Progress2 do
begin
Image := MainForm.ImageList.Items.Find("Progress1");

и соответственно
Progress2.Free;



Наверх

Титульная страница Поиск, карта сайта Написать письмо