Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.02.12;
Скачать: CL | DM;

Вниз

List Index out of bounds   Найти похожие ветки 

 
2Wish   (2006-01-15 22:45) [0]

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) [1]

Ну Вы же удаляете контролы, индексы контролов меняются сответсвенно.

Измените цикл на
for i : = ControlCount - 1 downto 0 do



Страницы: 1 вся ветка

Текущий архив: 2006.02.12;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.115 c
3-1134716335
Tigra
2005-12-16 09:58
2006.02.12
Как программно изменить NET DIR?


15-1137648038
begin...end
2006-01-19 08:20
2006.02.12
С Днём рождения! 19 января


15-1138080476
Antip
2006-01-24 08:27
2006.02.12
Пишется ли в exe-шник лицензионная инфа о Delphi?


15-1137592136
Piter
2006-01-18 16:48
2006.02.12
Запись DVD и проигрывание в домашнем кинотеатре


2-1137928111
Rubey
2006-01-22 14:08
2006.02.12
Скроллинг по STRINGGRID - у