Название: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Октябрь 16, 2007, 12:40 Я знаю что можно читать свойства в css...
ну например в css: Код: .QPushButton["flat=true"] { Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Октябрь 17, 2007, 13:51 ну неужеле нихто не использует таблици стилей для оформления виджетов?...
ап Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: LestorN от Октябрь 17, 2007, 13:58 А зачем? Пример для чего это может быть нужно, а то я голову сломал...
Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Tonal от Октябрь 17, 2007, 15:27 CSS это не язык программирования.
Это язык описания отображения. Поэтому писать свойства с его помощью бессмысленно. Лучше опиши, чего именно ты пытаешься добиться? Как должно выглядеть то, что ты пытаешься оформить этим css-ом? Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Октябрь 17, 2007, 20:57 CSS это не язык программирования. Объясняю, через css, можно описать внешний вид виджетов(это например может использовться в скинах), в Qt есть так сказать - стандартный набор параметров задаваемых для СТАНДАРТНЫХ(входящих в поставку) виджетов. У многих виджетов есть свои собственные свойства которые можно задать через css.Это язык описания отображения. Поэтому писать свойства с его помощью бессмысленно. Лучше опиши, чего именно ты пытаешься добиться? Как должно выглядеть то, что ты пытаешься оформить этим css-ом? Задать внешний вид виджета можно при помощи функциии - setStyleSheet( QString style ). Теперь объясню в чем проблема, я написал свой виджет, у которого есть например свойства не тока - color backgroundcolor итд. а еще и например box-color или чтото этом роде(пример). Соответственно мне хочется чтобы я мог в томже css, я мог написать box-color: lime. Я надеюсь суть ясна? Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Tonal от Октябрь 18, 2007, 06:42 Соответственно, ты в своём виджете должен подхватывать текущий css и отрисовываться в зависимости от того, что там написано.
Кроме того, у меня есть некоторые сомнения в том, что можно использовать в css-ках произвольные свойства. Их набор описан в доках и про его расширение я ничего там не видел. Хотя было бы круто. ;-) Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Октябрь 18, 2007, 13:37 Соответственно, ты в своём виджете должен подхватывать текущий css и отрисовываться в зависимости от того, что там написано. Так, уточняю... я незанимаюсь парсингом css, за меня это делает встроенный css парсер.Кроме того, у меня есть некоторые сомнения в том, что можно использовать в css-ках произвольные свойства. Онже выстовляет свойства виджетов, такие как: шрифт, цветовая гамма, отступы, граници итд... А рисует это все - сам виджет. Я бы порекомендовал вам посмотреть примеры stylesheet'а из какталога examples в корне каталога qt. Там очень наглядно все видно. Их набор описан в доках и про его расширение я ничего там не видел. Я тоже просмотрел все доки, тоже ничего про расширение не увидел... НО!Хотя было бы круто. ;-) Свойства объекта ( продекларированные при помощи макроса Q_PROPERTY() ), css парсер узнает, если в css идет чтение этих свойств. например: Код: .QPushButton["flat=true"] { Я пробовал создавать пользовательские классы, с пользовательскими свойствами. Все работае на "Ура". Так если парсер может определить значение свойства любого класса(речь идет о классах наследованных от QObject'а), то следовательно можно сделать вавод, что с помощью css можно и менять эти свойства. Весь вопрос - КАК? Перепробовал массу вариантов, у меня ничего не вышло. Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Lion от Октябрь 19, 2007, 14:39 CSS-ом менять свойства нельзя скорее всего, т.к. он для этого не предназначен. У меня другая проблема, при включенном css вся прога сильно тормозит. Никто с этим не сталкивался?
Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Tonal от Октябрь 19, 2007, 16:46 Смотри "The Style Sheet Syntax"/"Setting QObject properties"
Для 4.3 таки можно установить пользовательские свойства. А на счёт кто чего рисует - проще исходники посмотреть. Порассматривай, например, src\gui\styles\qstylesheetstyle.cpp - оч. просветляет. ;-) Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Октябрь 20, 2007, 01:32 CSS-ом менять свойства нельзя скорее всего, т.к. он для этого не предназначен. Что значит "не предназначен"? ... что значит "по-моиму" и "скорее всего"?Он предназначен для задания стиля, тык наверняка тролли позаботелись о "виджетописателях". У меня другая проблема, при включенном css вся прога сильно тормозит. Никто с этим не сталкивался? в кутэ, покрайней мере 4х версиях, просто какаято беда с отрисовкой виджетов, причем я пробовал и с каэсэс и без него, один хрен тормозит(извените)... достаточно запустить экзампл "richtext", запихнуть туда кусок текста из книги, и можно наслаждаццо превосходным слайдшоу при выделении больших блоков текста...А на счёт кто чего рисует - проще исходники посмотреть. Зачем лесть в исходники, вот по каэсэс есть превосходный экзампл - stylesheet, разобравшись с ним с каэсэс - все ясно...Порассматривай, например, src\gui\styles\qstylesheetstyle.cpp - оч. просветляет. ;-) Смотри "The Style Sheet Syntax"/"Setting QObject properties" Ни в доках, ни в блогах девелоперов, никаких упомянаний не нашел. ...пойду жаловаццо в оон ;DДля 4.3 таки можно установить пользовательские свойства. Короче ждем куте4.4, можт там в манах чтонибуть и появиццо... вообще это уже не первый пробел в манах куте, например про скриптовый модуль тоже очень мало написанно, экзамплы приктически не какого представления не дают о принципе разработки с исп. данного модуля... разбирался месяц, прежде чем чтото путное смог написать. Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Tonal от Октябрь 20, 2007, 16:18 Э... пример stylesheet о том, как использовать css для стандартных виджетов. Как писать новые и в них использовать css, там вроде совсем нет.
Да, версия у тебя какая? У меня 4.3.1 и в разделе "The Style Sheet Syntax" есть подраздел "Setting QObject properties". Всё находиться довольно просто... Ну а про тормоза - это да, есть именно с css. Бум надеяться на 4.4 Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Октябрь 21, 2007, 11:55 Э... пример stylesheet о том, как использовать css для стандартных виджетов. Как писать новые и в них использовать css, там вроде совсем нет. Вот кстати 4.3.0, и с каэсэсом тормозов особо не прибывляеццоДа, версия у тебя какая? У меня 4.3.1 и в разделе "The Style Sheet Syntax" есть подраздел "Setting QObject properties". Всё находиться довольно просто... Ну а про тормоза - это да, есть именно с css. Бум надеяться на 4.4 Название: Re: Можноли менять свойства объектов через css - файл? Отправлено: Dodge от Ноябрь 02, 2007, 14:40 Э... пример stylesheet о том, как использовать css для стандартных виджетов. Как писать новые и в них использовать css, там вроде совсем нет. в доках этот раздел появился после 4.3, отсюда и топ родилса.Да, версия у тебя какая? У меня 4.3.1 и в разделе "The Style Sheet Syntax" есть подраздел "Setting QObject properties". Всё находиться довольно просто... Ну а про тормоза - это да, есть именно с css. Бум надеяться на 4.4 Всем спасибо. Разобрался. перед именем своего пропертя ставим qproperty-. то получается сие: mywidget.h Код: class MyWidget : public { Код: MyWidget { |