Это просто.Я хочу иметь возможность отказаться от начала перетаскивания (до того, как это произойдет), если я думаю, что определенный элемент не подходит для перетаскивания.Это возможно?
Я пытался реализовать свою собственную систему перетаскивания, но в некоторых случаях она не работает должным образом:
procedure TNewListView.MouseMove(Shift: TShiftState; X, Y: Integer);
var StartIt: Boolean;
DragIndex: Integer;
begin
if (ssLeft in Shift) and not Dragging then begin
DragIndex:= GetItemIndexAt(X, Y);
if (DragIndex >= 0) and IsIndexSelected(DragIndex) then begin
StartIt:= False;
if Assigned(FOnBeforeDrag) then FOnBeforeDrag(Self, DragIndex, StartIt);
if StartIt then BeginAutoDrag;
end;
end;
inherited;
end;