2011-06-13 8 views
1

좋은 하루!QListView에 데이터를 표시 할 때의 문제점

Screenshot

클래스 QListView 및 QTreeView의 경우가 있습니다. 두 인스턴스 모두 모델 (QStandardItemModel)에서 데이터를로드합니다. QTreeView는 위치 (예 : 관리자, 관리자, 개발자 등)를 표시합니다. 위치 제목을 클릭하면 밝혀진 직원 목록이 표시됩니다.

QListView는 스태프의 위치 만 표시합니다.

질문 : 위치를 표시하지 않는 QListView의 전체 직원 이름 목록을 표시하려면 어떻게해야합니까? 어떤 방법을 재정의해야합니까? 이 상황에서 당신은 무엇을 조언 할 수 있습니까?

P. 감사!

답변

-2

QListWidget을 사용하면 QListView보다 쉽습니다.

+0

어떻게 모델 QListWigdet을 바인딩 할 수 있습니다 (죄송이 "Qt는 트리 모델을 평평하게"당신에게 다른 아이디어를 줄 것이다. 검색. 매우 구체적인되지 않습니다)? – Trainee

+0

모델로 직접 작업하고 뷰간에 모델을 공유하는 경우 QListWidget을 사용하지 마십시오. QListWidget은 일회성 디스플레이에 대한 올인원 솔루션입니다. – jdi

0

단일 모델로는 그렇게 할 수 없을 것이라고 생각합니다.

This thread은 프록시 모델을 사용하여 데이터 인스턴스 두 개를 유지하지 않고 원본 모델을 병합하는 것이 좋습니다. 그러나 (KDE의 KReparentingProxyModel)이 지적한 구현은 그리 간단하지 않습니다.

proxy models에 대한 일부 문서가 있으며 QSortFilterProxyModel은 더 구체적인 것으로 필요할 지 모르지만 귀하의 환경에서 사용할 수 있습니다.

이 스레드의 세 번째 응답에 첨부 된 클래스를 찾을 수도 있습니다 : ModelView - how to use proxies to filter this data? 시작 지점으로 재미 있습니다.

관련 문제