Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Wicked_Digger от Март 10, 2009, 21:14



Название: Практика наследования QStyle
Отправлено: Wicked_Digger от Март 10, 2009, 21:14
Поделитесь пожалуста своим опытом наследования QStyle и его производных, с целью изменения вида и поведения контролов.

Вопрос возник в связи с проблемой переносимости такого наследования, или я не понял чего-нибудь, или подобная схема модификации контролов не предусмотрена парадигмой. Если нужно изменить вид скажем QToolButton, например, что-бы надпись на ней разворачивалась вместе с тулбаром, проще всего изменить стиль... НО! какой? если приложение подразумевает переключение стиля, то придется переделывать все имеющиеся стили? Или стили для подобных задач лучше совсем не использовать?


Название: Re: Практика наследования QStyle
Отправлено: Magvaj от Март 10, 2009, 23:05
мучился я с ними... затем открыл для себя StyleSheets: http://doc.trolltech.com/4.5/stylesheet.html и любые проблемы со стилями отпали- меняй на ходу что хочешь.


Название: Re: Практика наследования QStyle
Отправлено: ритт от Март 10, 2009, 23:51
прокси-стиль: http://github.com/Arora/arora/blob/c48da166294143926961493b00943d5089d9a63b/src/utils/proxystyle.h
навскидку не помню где конкретно в доках про прокси-стили упоминалось - поищи.


Название: Re: Практика наследования QStyle
Отправлено: Wicked_Digger от Март 11, 2009, 00:30
прокси-стиль: http://github.com/Arora/arora/blob/c48da166294143926961493b00943d5089d9a63b/src/utils/proxystyle.h
навскидку не помню где конкретно в доках про прокси-стили упоминалось - поищи.

Ага, использовал я прокси, но к сожалению, не нашел в документации ничего подобного.
Если в коде "базового" стиля есть что-то вроде QXXXStyle::someFunc(...); то идея рассыпается, на такую проблему я и натолкнулся как-то, понял, что метод не универсален.


Название: Re: Практика наследования QStyle
Отправлено: Wicked_Digger от Март 11, 2009, 00:31
мучился я с ними... затем открыл для себя StyleSheets: http://doc.trolltech.com/4.5/stylesheet.html и любые проблемы со стилями отпали- меняй на ходу что хочешь.

И поведение контрола?  :P


Название: Re: Практика наследования QStyle
Отправлено: Sergey B. от Март 11, 2009, 12:32
мучился я с ними... затем открыл для себя StyleSheets: http://doc.trolltech.com/4.5/stylesheet.html и любые проблемы со стилями отпали- меняй на ходу что хочешь.

В whitePaper по стилям, Тролли рекомендуют юзать их, если приложение не очень большое и у него не сложный графический интерфейс (порядка 6000 строк), иначе будет сильно тормозить. И нужно писать свой стиль.