du machst es dir mit move trotzdem einfacher
Delphi-Quellcode:
procedure TForm1.Button_raufClick(Sender: TObject);
Var alterindex:integer;
begin
if listbox1.ItemIndex>0 then
begin
alterindex:=listbox1.ItemIndex;
//verschieben
ListBox1.Items.Move(listbox1.ItemIndex,listbox1.ItemIndex-1);
//neues item markieren
listbox1.ItemIndex:=alterindex-1;
end;
end;
procedure TForm1.Button_runterClick(Sender: TObject);
Var alterindex:integer;
begin
if listbox1.ItemIndex<ListBox1.Items.Count-1 then
begin
alterindex:=listbox1.ItemIndex;
//verschieben
ListBox1.Items.Move(listbox1.ItemIndex,listbox1.ItemIndex+1);
//neues item markieren
listbox1.ItemIndex:=alterindex+1;
end;
end;
Zitat:
listbox1.Items[listbox1.itemindex]
steht bei dir ganz am Anfang, wenn mal nichts selektiert ist kommt es bei dir zu einer
AV