2016-11-20 1 views
0

슬라이더의 QSlider :: add-page 부분에 절대 그라디언트 및 청크 스타일이있는 QSlider를 만들려고합니다. 스타일 시트 코드에 따라절대 및 청크 그라디언트가있는 QSlider

:

QSlider::groove:vertical { 
    background: #021017; 
    BORDER-radius: 5px; 
    position: absolute; 
    left: 10px; 
    right: 10px; 
} 
QSlider::handle:vertical { 
    height: 10px; 
    background: #0b1707; 
    border: 1px solid #46992b; 
    margin: 0px -10px; 
    /* expand outside the groove */ 

    border-radius: 5px; 
} 
QSlider::add-page:vertical { 
    BORDER-radius: 5px; 
    border: 1px solid #0e566d; 
    background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #46992b, stop: 0.5 #0e566d, stop: 1 #d16a4b); 
} 
QSlider::sub-page:vertical { 
    background: #021017; 
    BORDER-radius: 5px; 
    border: 1px solid #0e566d; 
    margin: 0px 1px 0px 1px; 
} 
QSlider::handle:vertical:hover { 
    background-color: #46992b; 
} 

그리고 나는 다음과 같은 출력을 얻을 : enter image description here

을하지만 난이 슬라이더의 바닥에서 높이에 따라 그라데이션 변경을 처리 이동 핸들. 그래디언트는 슬라이더 아래에서부터 맨 위까지의 높이를 기준으로합니다. 핸들 위치를 변경해도 모양이 변경되지는 않습니다.

그라디언트를 채우는 것도 가능합니다 - 진행률 표시 줄처럼? enter image description here

+0

대문자로 글타래를 쓰는 이유는 무엇입니까? 나머지 부분과 일관성을 유지할 때 다른 효과는 없습니다. – maxik

+0

하하. Caps Lock이 켜져 있었고 ... 게으름. – Scientized

답변

2

첫 번째 질문은 가능합니다.

QSlider::groove:vertical { 
    width: 10px; 
    /* background: #021017;*/ 
    background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #46992b, stop: 0.5 #0e566d, stop: 1 #d16a4b); 
    border-radius: 5px; 
    position: absolute; 
    left: 10px; 
    right: 10px; 
} 
QSlider::handle:vertical { 
    height: 10px; 
    background: #0b1707; 
    border: 1px solid #46992b; 
    margin: 0px -10px; 
    /* expand outside the groove */ 

    border-radius: 5px; 
} 
QSlider::add-page:vertical { 
    border-radius: 5px; 
    border: 1px solid #0e566d; 
    /*background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #46992b, stop: 0.5 #0e566d, stop: 1 #d16a4b);*/ 
} 
QSlider::sub-page:vertical { 
    background: #021017; 
    border-radius: 5px; 
    border: 1px solid #0e566d; 
    margin: 0px 1px 0px 1px; 
} 
QSlider::handle:vertical:hover { 
    background-color: #46992b; 
} 

slider with some value slider with some more value

요약 : 나는 당신이 제공하는 스타일 시트 (주석 일들이, 당신이 그들을 알) 조정 스타일의 기울기와 groove을하고 add-page 배경 색상을 건너 뜁니다. 두 번째 질문에 대한


, ::chunk하기 때문에 , 작동하지 않는 나는 그것이 기본QSlider 작동하지 않습니다 생각합니다. 청크를 처리 할 수있는 자신 만의 클래스를 자유롭게 구현할 수 있습니다.