2013-04-15 7 views
0

커스터마이징하는 QTreeWidget의 테두리를 숨기고 싶습니다.Qtreeview의 테두리를 숨기려면 어떻게해야합니까?

내부의 항목을 선택할 때 동일하게 지정하고 싶습니다. 그러나이 특별한 개요는 전혀 작동하지 않습니다. 나는 그것을 첫 번째 이미지와 동일하게하고 싶다. 어쩌면이 같은

QTreeView { 
    show-decoration-selected: 0; 
    background: transparent; 
} 

QTreeView::item:selected 
{ 
    background-color: #00CDDF; 
    font-weight: bold; 
    outline: none; 
} 


QTreeView::branch:selected { 
    background-color: #00CDDF; 
    outline: none 
} 

답변

3

국경 및 개요는 다른 것입니다. this을보십시오. Outline은 기본적으로 none으로 설정된 별도의 속성입니다. QTreeView 주위의 보이는 선은 기본값이있는 border 속성입니다.

테두리를 제거하려면 this과 같은 테두리 속성을 설정해보십시오. 당신이 활성 항목 (들) QTreeView::item:selected:active과 선택된 항목 (들) QTreeView::item:selected를 들어,이 셀렉터, QTreeView::item을 사용할 수있는 선택 항목에 대해 특정 측면에 경계선을 제거하기위한

QTreeView { 
    border: none; 
} 

,

QTreeView { 
    border: 1px solid; 
    border-top: none; 
} 

. 다음 선택 항목의

1

:

enter image description here

enter image description here

나는 CSS 코드의 조각을 사용합니까?

QTreeView 
{ 
    border: none; 
} 

또는

QTreeView > QScrollArea 
{ 
    border: none; 
} 
+0

와우. QTreeView> QScrollArea 란 무엇입니까? 은 과 같습니다. QScrollArea QTreeView {}? – darkgaze

+0

Nop. QTreeView는 내부에 QScrollArea를 포함합니다. –

+0

죄송합니다. QTreeView QScrollArea는 트리 뷰 내부의 스크롤 영역을 의미합니다. 왜 사용>? – darkgaze

0

나를 위해 잘 작동 :

QString style = "QTreeWidget::item:!selected " 
    "{ " 
     "border: 1px solid gainsboro; " 
     "border-left: none; " 
     "border-top: none; " 
    "}" 
    "QTreeWidget::item:selected {}"; 
    treeWidget->setStyleSheet(style); 
0

선택 항목의 경우 같은 스타일 시트가 나를 위해 잘 작동 :

QString style = "QTreeWidget::item:!selected " 
    "{ " 
     "border: 1px solid gainsboro; " 
     "border-left: none; " 
     "border-top: none; " 
    "}" 
    "QTreeWidget::item:selected {}"; 
    allergiesListView->setStyleSheet(style);