Russian Qt Forum
Сентябрь 30, 2024, 02:17 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Установить QPointF property через CSS  (Прочитано 2207 раз)
jekazz
Гость
« : Январь 09, 2010, 13:31 »

Использую Qt 4.6.0, где есть возможность устанавливать через CSS значения свойств, обозначенных в классе Q_PROPERTY, то есть, пример:
Имеем пользовательский класс

Код:
class MyButton: publi QPushButton
{
Q_OBJECT
Q_PROPERTY(int someProperty READ someProperty WRITE setSomeProperty)

public:
 int someProperty() const;
 void setSomeProperty();
};
А в CSS описываем стиль:
Код:
MyButton
{
 qpropert-someProperty: 5;
}

В таком виде работает. Но мне нужно устанавливать свойство типа QPointF:
Код:
Q_PROPERTY(QPointF someProperty READ someProperty WRITE setSomeProperty)
И не знаю как задать его в CSS. Пробовал так, не работает:
Код:
MyButton
{
 qpropert-someProperty: 5 5;
}
Как его установить? QPointF поддерживается QVariant-ом, но, видимо, CSS парсер, считывая "5 5" не воспринимает это как QPointF. Та же ситуация и с целочисленным QPoint. Я уже перепробывал комбинации:
5 5
5px 5px
5,5
5px,5px
(5 5)
(5px 5px)
(5,5)
(5px,5px)
(5;5)
(5px;5px)
(5:5)
(5px:5px)
 и т.д. с фигурными {} и квадратными [] скобками. Ни один вариант не катит. Пока вышел из положения тем, что свойство сделал типа QSize, в принципе, почти то же самое - 2 переменные, хотя и целочисленные, а не дробные. Тогда в стиле можно передавать 5px 5px.
Только всё-равно это неправильно, это уже бубен.
Записан
xokc
Птица говорун
*****
Offline Offline

Сообщений: 976



Просмотр профиля
« Ответ #1 : Январь 09, 2010, 14:34 »

Видимо проблема аналогична http://www.prog.org.ru/index.php?topic=8759.msg49047#msg49047
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.061 секунд. Запросов: 22.