2013-07-22 2 views
1

GUI 라이브러리로 Qt를 사용하는 테마 응용 프로그램을 상속 받았습니다. QTreeView를 사용하여 빌드 된 키워드 트리가 표준 방식으로 폴더 창에서 선택한 항목에 대해 WRT를 수행합니다.Qt - QTreeView : 테마 응용 프로그램에서 확인란을 표시하는 방법?

입니다. 선택 항목의 모든 항목에 키워드 '식물'이 지정되어 있으면 '식물'확인란이 선택됩니다. 해당 키워드가없는 항목이없는 경우 확인란의 선택이 취소되고 선택 항목 중 일부에 키워드 '식물'이 할당 된 경우 확인란이 회색으로 표시됩니다.

문제는 위의 모델이 작품을 좋아하면서 체크 박스 ('확정'상태) 회색으로 표시 될 때,이 단순히 화면에서 사라입니다 :

Invisible checkbox

체크 박스가 아직 거기 (사용자가 그것을 클릭하여 예상대로 작동 함) 보이지 않습니다.

어떻게 해결할 수 있습니까?

... 그리고 나는이 주제에 문제가 있음을 의심하기 때문에, 나는 여기에 테마에서 관련 (IMHO) 부분 붙여 넣기 :

QTreeView::indicator{ 
    border: 0px solid red; 
    width: 14px; 
    height: 16px; 
} 

QTreeView::indicator:unchecked{ 
    image: url(UI:checkbox_unchecked.png); 
} 

QTreeView::indicator:unchecked:disabled{ 
    image: url(UI:checkbox_unchecked_disabled.png); 
} 

QTreeView::indicator:checked{ 
    image: url(UI:checkbox_checked.png); 
} 

QTreeView::indicator:checked:disabled{ 
    image: url(UI:checkbox_checked_disabled.png); 
} 

QTreeView#UIGroup_TreeView{ 
    background-color: rgb(40, 40, 40); 
    alternate-background-color: rgb(50, 50, 50); 
    border: 0px solid black; 
} 

어떤 도움?

답변

0

docs

QCheckBox 당신의 스타일에 대한 이미지를 정의되지 않은 불확정 상태를 가지고 당신이 볼 수 있듯이.

이러한 이미지를 만들어야합니다

QTreeView::indicator:indeterminate{ 
    image: url(...); 
} 

QTreeView::indicator:indeterminate:disabled{ 
    image: url(...); 
} 
관련 문제