Ich hab hier mal 2 Funktionen geschrieben, da ein einfaches Verschieben eines Items ohne Drag & Drop darstellen:
Delphi-Quellcode:
function ItemUp(Steps: Integer; Box: TListbox) : Boolean;
begin
if Box.ItemIndex>0 then
Box.Items.Exchange(Box.ItemIndex,Box.ItemIndex-Steps);
end;
function ItemDown(Steps: Integer; Box: TListbox) : Boolean;
begin
if (Box.ItemIndex<>-1) and (Box.ItemIndex<Box.Items.Count-1) then
Box.Items.Exchange(Box.ItemIndex,Box.ItemIndex+Steps);
end;
Das zu verschiebende Item muss in der Listbox markiert sein, dann einfach die Funktionen aufrufen. Sollte eigentlich selbsterklärend sein.