delete为什么总是出错(100分)

H

hhdj

Unregistered / Unconfirmed
GUEST, unregistred user!
for i:=0 to listbox1.items.count-1 do
if listbox1.Selected=true then
listbox1.items.delete(i);
 
你执行了delete以后, selected 的 序号就不是原来的序号了, 你最好用从后面删

for i := listbox1.items.count - 1 downto 0 do
if listbox1.selected then
listbox1.items.delete(i);
 
suman已经替你解决这个问题了!
 
从前面删除的话就每次都删第一个。
for i:=0 to listbox1.items.count-1 do
if listbox1.Selected[0]=true then
listbox1.items.delete(0);
 
学习了~
 
照suman的做没错。
 
顶部