Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: 0x0001 от Август 14, 2012, 16:11



Название: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: 0x0001 от Август 14, 2012, 16:11
.. или что- то еще ;)))
надо сделать интерфейс красивый, заказной, там анимация , эффекты , виджеты и элементы - фотографические объекты реального мира + photoshop элементы.
Соответственно, что из этих технологий выбрать чтобы не тратить зря Время, что даст лучший результат, имеется в виду чтобы "не упереться" в ограничения и не начать использовать "костыли". сложность не имеет значения. еще ВАЖНО, быстрота модификации , типа изменения "стиля".

как я понимаю,
QSS - это типа HTML + настраиваем вид элемент на каждое состояние (pressed,hover,...), подгружаемый файл типа css -> qss
QtDeclarative:: QML язык... а-ля java, подгружаемый файл *.qml, достаточно круто...
QStyle + QAbstractAnimation :: уже со своими  virtual интерфейсами, и которые надо перегружать "ручками" (draw...)
QGraphicsWidget + QAbstractAnimation, ну тут вообще заморочки перегружаем painter() и т.д., + кодим ... кодим... ..


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: Странник от Август 14, 2012, 16:47
Qt Quick выглядит выигрышнее всего, но вариант самый рискованный.


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: Noel от Август 14, 2012, 16:49
QML - легче всего. Посмотри в примерах, какие свистелки-перделки в пару строк писали тролли.
Я бы взял QGraphicsWidget. Мне было бы удобнее с точки зрения написания кода.


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: Bepec от Август 14, 2012, 17:01
QSS(Qt CSS) отметай сразу. Он для "придания лоска", а не для серьёзных эффектов.


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: 0x0001 от Август 14, 2012, 22:23
QSS(Qt CSS) отметай сразу. Он для "придания лоска", а не для серьёзных эффектов.
вот спс, а то уж часа 4 на него потратил... но тоже понял, что инструмен не силный.. хотя конечно удобно - заменил css файл и ...))) в общем либо QDeclarative со своим qml скриптами... либо QStyle or QGraphic + QtScript для подгрузки разных 'стилей' ... подумаю еще...


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: lighting от Август 15, 2012, 10:07
вот спс, а то уж часа 4 на него потратил... но тоже понял, что инструмен не силный.. хотя конечно удобно - заменил css файл и ...)))
Что значит не сильный? На нем можно такого понаворотить что приложение не узнать будет. Другое дело что к вашей задаче он похоже подходит менее всего.


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: Bepec от Август 15, 2012, 12:07
Он не сильный по части логики и рисования. А для лоска и красоты - вполне.


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: 0x0001 от Август 15, 2012, 15:55
Подумал , почитал ... и решил... спасибо всем!
итак,
1.QSS для элементов которые 100% не будут анимированные или тма с необычными свойствами.
2.QML не использовать(тем более меньше общий размер дистрибутива, QDeclarative +8Mb у меня в статике + медленный там движок), но еще подумаю...
3.QStyle не использовать
3.для остального QGraphic + QAnimation + coding..coding..., в принципе этот механизм самый-самый низкого уровня, можно все...
4.принципиально менять п.3 можно подгрузкой QStcript файлов, определяющих поведение...

думаю, как-то так...


Название: Re: Ваше мнение, StyleSheet(qss) vs QStyle vs QtDeclarative vs QGraphicsWidget,
Отправлено: xokc от Август 16, 2012, 09:18
И всё же в свете последних тенденций развития Qt в сторону декларативного программирования пользовательских интерфейсов я бы порекомендовал всё же еще раз хорошо подумать о QML. Когда в задаче важны визуальные эффекты, проще способов их реализации, чем QML не найти. А если проект достаточно долгосрочный, то, с учётом грядущей Qt 5, пожалуй, Вы "обречены" на QML.