Название: QSpinBox up/down-arrow. [Решено]
Отправлено: Blitz156 от Февраль 22, 2013, 20:06
1. Как правильно задавать стиль для стрелочек? Проблема возникает при нажатии на кнопку, у стрелки появляется прямоугольный фон. (Вариант с использованием картинки не подходит). 2. Как задать цвет текста? (в выделенном состоянии он виден, а без выделения - нет). 3. Как задать цвет фона выше бордера(по краям видны красные уголки, это потому, что цвет делегата красный). QSpinBox {padding-left: 17px; color: white; \ border: 2px groove #CD5728; border-radius: 5px; \ text-color: black; } \ \ QSpinBox::up-button {subcontrol-origin: margin; subcontrol-position: top left; \ background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #FDFDFC, stop: 1 #F7F7F6); \ border-top-left-radius: 5px; border-width: 1px; width: 14px; \ border-left: 1px solid #BEBEBE; border-top: 1px solid #BEBEBE; border-right: 1px solid #BEBEBE; border-bottom: 0px;} \ \ QSpinBox::down-button {subcontrol-origin: margin; subcontrol-position: bottom left; \ background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #F7F7F6, stop: 1 #E4E2E0); \ border-bottom-left-radius: 5px; border: 1px solid red; width: 14px; \ border-left: 1px solid #BEBEBE; border-bottom: 1px solid #BEBEBE; border-right: 1px solid #BEBEBE; border-top: 0px;} \ \ QSpinBox::up-arrow { background-color: transparent; border-left: 2px solid none; \ border-right: 2px solid none; border-bottom: 2px solid #808080; width: 0px; height: 0px; } \ \ QSpinBox::down-arrow { background-color: transparent; border-left: 3px solid none; \ border-right: 3px solid none; border-top: 3px solid #808080; width: 0px; height: 0px; } \ \ QSpinBox::up-button:pressed { background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #D1CECC, stop: 1 #EEEDEC); } \ \ QSpinBox::down-button:pressed { background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1, stop: 0 #D2D0CC, stop: 1 #E9E7E6); } \
P.S. Вопрос 2 отпал, убрал QSpinBox { ..... color: white; \ ... Увеличил нижнюю кнопку, дабы хорошо была видна проблема. (http://1.png)
Название: Re: QSpinBox style
Отправлено: Blitz156 от Февраль 23, 2013, 10:37
Оказывается, up/down-arrow, так же как и button имеет состояние hover & pressed, так что проблема 1 решена переопределением этих состояний.
|