![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
List Index out of bounds [D7, WinXP]
2Wish © (2006-01-15 22:45:00)
procedure TForm1.Findndestroy;
var i:integer;
begin
for i:=0 to controlcount - 1 do
if controls[i] is TImage then
if (controls[i] as TImage).tag <> 0 then
(controls[i] as TImage).Free;
end;
Процедура была созданна, чтобы удалять все объекты TImage у который Tag не равен нулю. Компоненты удаляются, но во время работы программы возникает ошибка List Index out of bounds (3), не могу понять почему. Пытался обработать это как исключительную ситуацию, но ошибка все равно вылазит. В чем ошибка или есть другой способ очистить форму от TImage'ов?
Lamer@fools.ua (2006-01-15 23:46:00) [1]Ну Вы же удаляете контролы, индексы контролов меняются сответсвенно.
Измените цикл на
for i : = ControlCount - 1 downto 0 do