프로그래밍과 잡담

[Qt] QListWidget 메소드 중 takeItem에 관하여 본문

프로그래밍/Qt

[Qt] QListWidget 메소드 중 takeItem에 관하여

크레온 2009. 6. 25. 02:08
QListWidget 클래스에 보면

takeItem(int row) 이라는 메소드가  있다.

이 메소드가 의외로 사람을 햇갈리게하는게 있다.

값만 가져오는게 아니라 아예 리스트에서 빼온다.

그래서 전체 값도 1개 줄어들게 된다.

무슨말인가 하니

내가 심심해서 만들고 있는건데..

거기서 스샷을 캡쳐를 하겠다.



소스를 보면 더 쉬울테니 소스를 올리겠다.

void Test::ListMoveup()
{
    int moveItemRow = ui.listWidget->currentRow();
  
    if( 0 != moveItemRow )
    {
        //움직여질 아이템  위에 아이템
        QListWidgetItem *movedItem = ui.listWidget->takeItem(moveItemRow-1);      

        //움직일 아이템
        //QListWidgetItem *moveItem = ui.listWidget->item(moveItemRow);
           
         ui.listWidget->insertItem(moveItemRow,movedItem);
   }
}

결과

 


고로 사용할때 헷갈리지 말자.


반응형
Comments