怎么把ListBox中选中的多行一次行删除,但行删除是ListBox1.Items.Delete(ListBox1.ItemIndex),还有ListView呢?也怎么一次性删除选中的多行?
解决方案 »
- DELPHI的自定义界面设计问题?
- 西安高新区有公司招聘,请准备换工作的伙计留心。
- 如果宝蓝把戴妃卖给古狗
- 关于adoconnection.connectionstring动态指定的问题?????????????
- 关于assign的应用,求助
- 100分的问题,关于事件传递的问题。提示空地址的错误
- 客户端Dcomconnection与应用服务器连接后,应用服务器自动运行,当客户端断开连接后,应用服务器自动关闭,这时能让应用服务器不关吗?
- 为什么我的打印代码有错误?
- 对于字符串得判断可以用CASE吗?
- 如何COPY记录:
- 为什么OpenDialog1.FileName是乱码?
- 用TstringGrid(DBGrid1).fixedcols:=3; 现在一点击dbgrid就变形,请问如何解决?
----------
内部实现还是循环删除
procedure TCustomListBox.DeleteSelected;
var
I: Integer;
begin
if MultiSelect then
begin
for I := Items.Count - 1 downto 0 do
if Selected[I] then
Items.Delete(I);
end
else
if ItemIndex <> -1 then
Items.Delete(ItemIndex);
end;
另外你可以用checklistbox,它可以同时选择多项:
for i := 0 to checklistbox.Count - 1 do
if checklistbox.Checked[i] then
checklistbox.Selected[i] := True
else
checklistbox.Selected[i] := False;
checklistbox.DeleteSelected;
begin
if ListBox1.Selected[i] then RzListBox1.Items.Delete(i);
end;