怎样得到multiselect:=true的listview的所选项?

stanely 2002-10-01 03:45:04
注意:当multiselect:=true的时候,并不是只能连续的选择多个item,

而是可以中间间隔任意数量item选择。

这样一来,怎样得到所选择的非连续的items呢?

谢谢!
...全文
106 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ssl2000 2002-10-01
  • 打赏
  • 举报
回复

var
first,secord:tlistitem;
begin
first:=listview1.GetNextItem(listview1.TopItem,sdall,[isSelected]);//取得第一个select
secord:=listview1.GetNextItem(first,sdall,[isSelected]);//取得第二个select
end;
ldnever 2002-10-01
  • 打赏
  • 举报
回复
顶!
王集鹄 2002-10-01
  • 打赏
  • 举报
回复
(*//
声明:
本人保证所提供的方法是所知的最好方法
解答问题纯属公益性质
所以请不要向我追问
如果有时间自会关注后续问题
分析:
TListItem.Selected属性表示是否被选中
TListView.Items属性表示列表中的项集
TListColumns.Count、TListColumns.Items就不多说
问题:如何处理ListView中多选的情况?
设计:Zswang
日期:2002-10-01
方案:向前遍历
附言:怎么不自己看看Help,到网上搜索先。在想这问题是不是太简单了?是不是你说的是其他意思?
//*)

procedure TForm1.Button1Click(Sender: TObject);
var
I: Integer;
begin
for I := ListView1.Items.Count - 1 downto 0 do
if ListView1.Items[I].Selected then begin
ShowMessage(ListView1.Items[I].Caption);
ListView1.Items[I].Delete;
end;
end;
撒加的天使 2002-10-01
  • 打赏
  • 举报
回复
按着Ctrl 键选择,就可以得到不连续的多个记录了。

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧