procedure TFrm_main.FlatBut_delClick(Sender: TObject);
begin
If (ListBox1.SelCount < 0) then
ShowMessage('请先选择要删除的仓库')
else
ListBox1.Items.Delete(ListBox1.SelCount);
end;这段代码应该没什么问题吧,但ListBox1里面有了item也被选中,删除的时候还是提示
请先选择要删除的仓库 就是只执行ELSE以前的代码,我调试了一下
ListBox1.SelCount = -1,这是为什么啊?
begin
If (ListBox1.SelCount < 0) then
ShowMessage('请先选择要删除的仓库')
else
ListBox1.Items.Delete(ListBox1.SelCount);
end;这段代码应该没什么问题吧,但ListBox1里面有了item也被选中,删除的时候还是提示
请先选择要删除的仓库 就是只执行ELSE以前的代码,我调试了一下
ListBox1.SelCount = -1,这是为什么啊?
begin
If (ListBox1.ItemIndex< 0) then
ShowMessage('请先选择要删除的仓库')
else
ListBox1.Items.Delete(ListBox1.SelCount);
end;應該用ItemIndex
begin
if ListBox1.ItemIndex <> -1 then
ListBox1.Items.Delete(ListBox1.ItemIndex)
else
ShowMessage('请先选择要删除的仓库');
ListBox1.ItemIndex := -1;
end;// 这个是删除一个Item的代码。
ListBox1.Items.Delete(ListBox1.SelCount);
改成
ListBox1.Items.Delete(ListBox1.ItemIndex);
begin
If ListBox1.SelCount <= 0 then
ShowMessage('请先选择要删除的仓库')
else
ListBox1.Items.Delete(ListBox1.SelCount);
end;
你的代码我试了没出现你说的现象
另外 MultiSelct 属性允许多选 ExtendedSeledt 属性允许使用Shift键与Ctrl键选择多个连续或不连续项