Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.44 MB
Время: 0.035 c
15-1137696182
yuril
2006-01-19 21:43
2006.02.12
Требуется программист


1-1136800132
M_Alex
2006-01-09 12:48
2006.02.12
как приостановить и возобновить выполение процедуры


1-1136848666
КодеКорешь
2006-01-10 02:17
2006.02.12
Координаты выделенной строки DBGrid относительно самого грида


2-1138216674
blopp
2006-01-25 22:17
2006.02.12
чтение через tfilestream


15-1137841026
Andy BitOff
2006-01-21 13:57
2006.02.12
Borland Developer Studio




   Наверх