Вниз
Скачать: CL | DM;

Ошибка   Найти похожие ветки 

 
jenbbond   (2002-05-25 10:12) [0]

n:=0;
for i:=0 to ComponentCount-1 do
if Components[i] is TBitBtnWithColor then
if n=1 then
TBitBtnWithColor(Components[i]).Color:=clRed;
if n=0 then
TBitBtnWithColor(Components[i]).Color:=clGreen;

Пытаюсь выполнить код , но при выполнении вылетает ошибка
Project1.exe raised exception class EListError whit message "List index out of bounds(18)".

Подскажите в чем проблема млжет быть!!!


 
Виктор Щербаков ©   (2002-05-25 10:24) [1]

Переменная i используется сразу после цикла:
TBitBtnWithColor(Components[i]).Color:=clGreen;
Её значение не определено.


 
Внук ©   (2002-05-25 11:02) [2]

Наверное, так:
n:=0;
for i:=0 to ComponentCount-1 do
if Components[i] is TBitBtnWithColor then
if n=1 then TBitBtnWithColor(Components[i]).Color:=clRed
else
if n=0 then TBitBtnWithColor(Components[i]).Color:=clGreen;



 
Anatoly Podgoretsky ©   (2002-05-25 11:18) [3]

Если это именно то, что он хочет сделать, то вместо IF
case N of
0: TBitBtnWithColor(Components[i]).Color:=clGreen;
1: TBitBtnWithColor(Components[i]).Color:=clRed;
end;



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

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



Память: 0.45 MB
Время: 0.008 c
14-18149
Mikeee
2002-05-03 13:38
2002.06.06
По какому событию...


3-17828
Nickolaus
2002-05-05 01:36
2002.06.06
InterBase падает. Работа стоит.!!! Подскажите!


1-18059
LP
2002-05-25 14:25
2002.06.06
глобальная переменная


14-18131
Dimka Maslov
2002-04-29 17:03
2002.06.06
:-)


1-17918
Юрий Федоров
2002-05-27 17:39
2002.06.06
Многоязыковая поддержка




   Наверх