listbox 의 아이템 전체를 비교하여 특정 값을 찾아서 지우는 for 문을 만들었는데
out of bound 에러가 발생합니다..
for i := 0 to listbox1.items.count - 1 do
begin
if listbox1.items[i] = 'AAA' then
listbox1.items.delete(i);
end;
listbox1.items.count 는 아이템을 지울때 마다 값이 바뀌는데
for 문의 최대값은 안 바뀌는 것 같습니다..
out of boud 에러가 나지 않게 하려면 어떻게 바궈야 하나요?
Listbox의 Count가 달라지죠... 하나만 삭제해도 for문이 마지막으로 돌면 out of bound에러가 날 수밖에 없습니다.
for문을 거꾸로 도세요.
for i := 0 to listbox1.items.count - 1 do
==>
for i := listbox1.items.count - 1 downto 0 do