About the author
In the OnDragDrop event of a TListView, the source item and the destination item can be obtained thus:
procedure TFormX.ListView1DragDrop(Sender, Source: TObject; X, Y: Integer); var LSourceItem, LDestItem: TListItem; LSourceIndex, LDestIndex: Integer; begin LSourceItem := ListView1.Selected; LDestItem := ListView1.GetItemAt(X, Y); LSourceIndex := ListView1.Items.IndexOf(LSourceItem); LDestIndex := ListView1.Items.IndexOf(LDestItem); // ... other code ... end;
Continued discussion of undocumented Delphi 8 Property Access Specifiers, and other ways of adding and removing delegates / events handlers, including clearing the list of all the delegates / event handlers.
This article discusses the new Delphi 8 property access specifiers.
A method pointer is now the same as a global procedure, ie, procedure of object = procedure.