Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Hordi от Август 28, 2009, 12:11



Название: Как изменить вид QCheckBox
Отправлено: Hordi от Август 28, 2009, 12:11
Нужно минимальными усилиями изменить вид QCheckBox, т.е. для PartiallyChecked сделать не серый фон с галочкой, а закрашенный квадрат внутри. Чувствую, что через стили, но никогда стили не ковырял...


Название: Re: Как изменить вид QCheckBox
Отправлено: Racheengel от Август 28, 2009, 16:02
минимально - это через стили...


Название: Re: Как изменить вид QCheckBox
Отправлено: max1983 от Август 29, 2009, 19:49
Да мож просто какой стильпонравится :)

В майне размести
Код:
    QStyle * pstyle = 0;
    pstyle = QStyleFactory::create("Cleanlooks");
    QApplication::setStyle(pstyle);

ну и меняй "Cleanlooks" на разные названия стилей.


Название: Re: Как изменить вид QCheckBox
Отправлено: SABROG от Сентябрь 03, 2009, 16:10
Об этом в документации есть. Можно через стайлшиты.

Цитировать
QCheckBox::indicator:indeterminate:hover {
     image: url(:/images/checkbox_indeterminate_hover.png);
 }

 QCheckBox::indicator:indeterminate:pressed {
     image: url(:/images/checkbox_indeterminate_pressed.png);
 }


Название: Re: Как изменить вид QCheckBox
Отправлено: serg_hd от Февраль 08, 2010, 13:41
А можно ли сделать так, чтобы текст был не справа, а слева от галки?
Пробовал
setStyleSheet("QCheckBox {text-align: left}");
не катит


Название: Re: Как изменить вид QCheckBox
Отправлено: shirushizo от Февраль 08, 2010, 15:07
setStyleSheet("QCheckBox {text-align: left}");

Это ты текст выровнял по левому краю. Расположение напрямую, вроде, не изменешь.


Название: Re: Как изменить вид QCheckBox
Отправлено: lit-uriy от Февраль 08, 2010, 15:40
QWidget::setLayoutDirection(Qt::RightToLeft);


Название: Re: Как изменить вид QCheckBox
Отправлено: serg_hd от Февраль 08, 2010, 17:19
QWidget::setLayoutDirection(Qt::RightToLeft);
отлично, то что надо, спасиб


Название: Re: Как изменить вид QCheckBox
Отправлено: shirushizo от Февраль 09, 2010, 17:06
Никогда бы не догадался  :)


Название: Re: Как изменить вид QCheckBox
Отправлено: lit-uriy от Февраль 09, 2010, 18:48
Этот метод обычно применяют масштабно, для всего приложения. И предназначен изначально для тотальной интернационализации. Например, для стран/языков с письмом "Справа налево"


Название: Re: Как изменить вид QCheckBox
Отправлено: shirushizo от Февраль 09, 2010, 19:18
Возьму на вооружение, вдруг нужно будет приложению оригинальность добавить. А направление текста можно изменить, что бы символ, введенный последним, был самым слевым в строке?


Название: Re: Как изменить вид QCheckBox
Отправлено: lit-uriy от Февраль 09, 2010, 20:15
по идее да. Но я не разбирался с этим, за не надобностью


Название: Re: Как изменить вид QCheckBox
Отправлено: MoPDoBoPoT от Февраль 09, 2010, 20:33
В дизайнере проверил - нет.


Название: Re: Как изменить вид QCheckBox
Отправлено: lit-uriy от Февраль 09, 2010, 20:54
>>В дизайнере проверил - нет.
Я думаю это как-то с локализацией должно быть связано


Название: Re: Как изменить вид QCheckBox
Отправлено: MoPDoBoPoT от Февраль 09, 2010, 21:08
Скорей всего.