2013-07-12 3 views
0

QStandardItemModel의 항목에 고유 키를 지정하여 해당 키의 존재 여부를 확인할 수있는 방법이 있습니까? 존재하는 경우 관련 QstandardItem을 얻습니다.검색 또는 키로 QStandardItemModel을 통해 QStandardItem 검색

업데이트 : 여기

내가 할 노력하고 있어요 것입니다. 내 테이블에 3 열이 있으므로 3 QStandardItem 있습니다. 이것은 내가

QStandardItem* item0 = new QStandardItem("Column1"); 
QStandardItem* item1 = new QStandardItem("Column2"); 
QStandardItem* item2 = new QStandardItem("Column3"); 

을 사용하고있는 코드 지금 내 모델은 moddel라고하며 나는 그런

moddel->setItem(0,0,item0); 
moddel->setItem(0,1,item1); 
moddel->setItem(0,2,item2); 
나는 그래서 몇 가지 고유 키 행을 할당해야

나의 모델이 부착하고 I 해당 키에 대한 모델을 확인할 수 있고 모델은 행 번호를 반환합니다. 어떤 suggetsions.

답변

2

당신은 당신은 data 호출을 사용하여 모델의 모든 인덱스의 데이터를 얻을 수 있습니다, 사용자 정의 된 역할에 대한 사용자 지정 키를 설정하기 위해 예를 들어

#define MyRole Qt::UserRole + 2 
myItem->setData(Qvariant(key), MyRole) 

QStandardItemsetData 기능을 사용할 수 있습니다.

QVariant d = mymodel->data(anindex, MyRole) 

키가 존재하는지 확인하는 함수를 작성하는 것은 간단합니다.

+0

방금 ​​업데이트했습니다. 아직도 조금 혼란스러워. – Rajeshwar