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

Вниз

Листбокс   Найти похожие ветки 

 
anod ©   (2002-08-24 10:42) [0]

Пытаюсь удалить из листбокса выделенные строки, если количество выделенных меньше половины количества строк в листбоксе, то все нарамльна, а если ббольше, то выдается ошибка "List index out of bounds"

procedure plistToPlayList(Handle: HWND; list: TStrings);
var i:integer;
begin
List.BeginUpdate;
SendMessage(handle, LB_RESETCONTENT, 0, 0);
for i:= 0 to list.Count-1 do begin
SendMessage(handle,LB_ADDSTRING,0,Integer(PCHAR(IntToStr(i+1)+". "+ExtractFileName(list[i]))));
end;
List.EndUpdate;
end;

procedure deleteselected(Handle: THandle; list: TStrings);
var i:integer;
begin
if SendMessage(handle, LB_GETSELCOUNT, 0, 0)>0 then begin
for i:= 0 to list.count-1 do
if SendMessage(handle, LB_GETSEL, i, 0)>0 then list.Delete(i);
plistToPlayList(Handle, List);
end;
end;


 
Anatoly Podgoretsky ©   (2002-08-24 11:14) [1]

for i:= list.Count-1 downto 0 do begin


 
anod ©   (2002-08-24 12:07) [2]

Спасибо, а почему так???


 
Song ©   (2002-08-24 14:44) [3]

Потому что строки сдвигаются после удаления.


 
Anatoly Podgoretsky ©   (2002-08-24 14:58) [4]

у тебя 10 строк, две ты удалил, как думаешь что будет с индексом 8 или 9



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
14-32019
ikivio
2002-09-14 06:30
2002.10.10
Хранение информации


4-32097
Velocity
2002-08-28 06:19
2002.10.10
Помогите с SetDataClipboard плиз !!!


4-32103
Zakhs
2002-08-28 16:03
2002.10.10
API для роботы с Html help


4-32074
oduvan
2002-08-22 10:12
2002.10.10
WinXP ругается, когда удаляю папку (созданную программно)!!!


7-32024
Beginner
2002-07-31 23:03
2002.10.10
Обратится в Windows к физическому диску на низком уровне.