Главная страница
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.056 c
15-1137685587
Kerk
2006-01-19 18:46
2006.02.12
Просьба покритиковать логотип


15-1137764402
Харько
2006-01-20 16:40
2006.02.12
Я электризуюсь. Ужос!


15-1137986235
tigra
2006-01-23 06:17
2006.02.12
Библиотека RX Library


15-1137394603
Nic
2006-01-16 09:56
2006.02.12
Чё-то с погодой не то...


2-1138293587
только начал...
2006-01-26 19:39
2006.02.12
Совсем тупые вопросы по взаимодействию с БД в Делфи