我有一个带有TListView的表单。我加载一些项目,它显示正常。 如果我点击(OnClick)一个项目,我可以显示第二个表单,其中包含项目详细信息和一些其他选项。
但是,如果我向右滑动(激活“删除”按钮),我会收到OnClick事件,并显示详细信息表单。当我关闭Detail表单(或使用“Back”按钮)时,TListView现在显示了Delete按钮。
所以,这个的简短版本是如何在完成滑动时停止触发OnClick事件?
我尝试添加一个标志,并在OnDeleteChangeVisible和/或OnGesture中设置标志,但标志似乎永远不会被设置,我在调试模式下运行时看不到这些事件。< / p>
var isDelete: Boolean
procedure TfrmTaskList.lvTaskListDeleteChangeVisible(Sender: TObject;
AValue: Boolean);
begin
if (AValue = True) then
isDelete := True
else
isDelete := False;
end;
procedure TfrmTaskList.lvTaskListGesture(Sender: TObject;
const EventInfo: TGestureEventInfo; var Handled: Boolean);
begin
if (EventInfo.GestureID = sgiRight) then
begin
isDelete := True
end
else
begin
isDelete := False;
end;
end;
任何帮助,建议,资源将不胜感激。感谢
答案 0 :(得分:2)
使用OnTap
代替OnClick
事件