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

Вниз

Checklistbox   Найти похожие ветки 

 
Ibn El Ivan   (2004-07-26 14:32) [0]

Подскажите пожалуйста для удаления из Checklistbox используется цикл:
for i:=0 to checklistbox.count-1 do
if checklistbox.checked[i] then checklistbox.items.delete(i);
При запуске проги и при попытке удаление нескольких отмеченных элементов появляется сообщение об ошибке: list index out of bounds


 
Subdigger ©   (2004-07-26 14:35) [1]

при удалении параметр  checklistbox.count становится на 1 меньше

правильно будет так
i:=0;
while i<checklistbox.count do
if checklistbox.checked[i] then checklistbox.items.delete(i)
else inc(i);


 
@Lex ©   (2004-07-26 14:35) [2]

i:=0;
while i < checklistbox.count do
 if checklistbox.checked[i] then checklistbox.items.delete(i)
 else Inc(i);


 
Ega23 ©   (2004-07-26 14:37) [3]

Естественно. Потому, что когда ты делаешь
checklistbox.items.delete(i)
твой checklistbox.count становится меньше на единицу.
Здесь тебе не for цикл нужен, а while


 
Андрей Л.   (2004-07-26 14:37) [4]

При удалениии элемента из списка, весь список перенумеровывается, и от этого элементов ставновится меньше.


 
Ibn El Ivan   (2004-07-26 14:39) [5]

Спасибо!!


 
ssk ©   (2004-07-26 14:49) [6]

можно и for do, только цикл гнать с конца:

for i:=MAXVALUE downto 0 do
  ....


 
ssk ©   (2004-07-26 14:49) [7]

можно и for do, только цикл гнать с конца:

for i:=MAXVALUE downto 0 do
  ....



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
3-1089795423
User_OKA
2004-07-14 12:57
2004.08.08
Упаковка dbf


9-1082999350
20002
2004-04-26 21:09
2004.08.08
паросочетания


6-1086713111
Dubensky
2004-06-08 20:45
2004.08.08
Привет всем. Подскажите как по сети динуть файл, если нету шар?


1-1090774537
ko
2004-07-25 20:55
2004.08.08
клавиатура


1-1090852542
slaga
2004-07-26 18:35
2004.08.08
Как созадать креейтнуть невизуальную компоненту в ddl-ке