请问点击listview中caption里的checkbox的事件是什么?

danrushui 2003-08-19 06:22:44
当点击listview一列中的事件为listclick(),请问点击里面的checkbox的事件是什么?怎么不和listclick一致?
...全文
44 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liuziran 2003-08-24
  • 打赏
  • 举报
回复
有了一段代码,测试一下,基本可行
procedure TForm7.ListView1Click(Sender: TObject);
const
ItemIndent =4;
CheckBoxSize =16;
var
I :Integer;
P :TPoint;
AItem :TListItem;
R1, R2 : TRect;
begin
with ListView1 do
begin
P :=ScreenToClient(Mouse.CursorPos);
AItem := GetItemAt(P.X, P.Y);
if AItem <>nil then
begin
R1 :=AItem.DisplayRect(drSelectBounds);
R2 :=Rect(ItemIndent, R1.Top, ItemIndent + CheckBoxSize, R1.Top + CheckBoxSize);
if ptInRect(R2, P) then
if AItem.Checked then
ShowMessage(Format('Item[%d] is Checked',[AItem.Index]))
else
ShowMessage(Format('Item[%d] is not Checked',[AItem.Index]));
end;
end;
end;
danrushui 2003-08-20
  • 打赏
  • 举报
回复
我的是d6,不是我一个人这样,我的一个同事也是这样。找了好些资料,到现在还搞清楚。
huojiehai 2003-08-19
  • 打赏
  • 举报
回复
To楼主,按你的设置(listview的类型为viewtype为vsReport)我试过,可以的呀,是不是你的Delphi有问题,我的是D5
DWGZ 2003-08-19
  • 打赏
  • 举报
回复
可以截获LVM_SETITEMSTATE消息, 你试试吧我要回家了
danrushui 2003-08-19
  • 打赏
  • 举报
回复
还有一点是listview的类型为viewtype为vsReport的。
danrushui 2003-08-19
  • 打赏
  • 举报
回复
不行的。工试过好几次了。点击checkbox时并没触发listviewclick()事件。
huojiehai 2003-08-19
  • 打赏
  • 举报
回复
有能在OnClick上做
procedure TForm1.ListView1Click(Sender: TObject);
begin

end;

5,388

社区成员

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

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