리스트박스에서 아이템을 위아래로 이동할때...
위로 이동하는건 맨 윗줄에 가서도 클릭해도 이상이 없는데....
마지막줄에서 아래로 이동할 버튼을 눌르면 에러가 납니다...
뭐가 문제인지 고수님들께 여쭤봅니다...
procedure TFormMenu.Button2Click(Sender: TObject);//위로 이동..
var
i : integer;
begin
if ( ListBox1.ItemIndex <> 0) then
begin
i := ListBox1.ItemIndex - 1;
ListBox1.Items.Move(ListBox1.ItemIndex, i);
ActiveControl := ListBox1;
ListBox1.MultiSelect := True;
ListBox1.ItemIndex := i;
end;
end;
procedure TFormMenu.Button3Click(Sender: TObject);//아래로 이동..
var
i, j : integer;
begin
ListBox1.MultiSelect := True;
j := ListBox1.Columns-1;
i := ListBox1.ItemIndex;
if ( i <> j) then
begin
i := i + 1;
ListBox1.Items.Move(ListBox1.ItemIndex, i);
ActiveControl := ListBox1;
ListBox1.ItemIndex := i;
end;
end;
<!--CodeS-->
if ( ListBox1.ItemIndex <> 0) then
<!--CodeE-->
조건으로 에러안나게 보호한것 같이
아래로 내리는 코드에서도
<!--CodeS-->
if ( ListBox1.ItemIndex < (ListBox1.Items.Count - 1)) then
<!--CodeE-->
으로 둘러 싸세요..