你删除的时候使用for i:=listbox1.items.count downto 1 do
  delete;
不要使用for to 的操作

解决方案 »

  1.   

    可能是方法不对
    试一下下面的方法,一定没问题!
    ListBox1.Items.Delete(ListBox1.ItemIndex);
      

  2.   

    可能是方法不对,你的items[i]你的i值超出了你的范围,
    ListBox1.Items.Delete(ListBox1.ItemIndex);
    是可以的
      

  3.   

    访问listbox1时,不要使用固定的数或变量,应该在访问listbox的过程里面设置listbox1.items.count-1,这样就可以了
      

  4.   

    To: xy_c ()     假如ListBox.items.count为10,你要删除-1或者大于10的项时都是会报错的,因为items中根本没有这一项,超出了下标范围。此类问题最容易出在循环当中,比如For do 和while中,因为没有计算正确数组下标值,如果是用循环的话,用断点调试的方法分析分析数组下标值就要以找到问题所在,如果不是循环,用楼上的方法是不会出错的。good luck!