Использую Qt 4.5.2.
Наткнулся на камень в виде изменения свойств HTML-форматированного текста внутри QLabel с применением к нему свойств на уровне QApplication::setStyleSheet.
Т.е. имеется таблица. Она относится к css классу report.
QLabel a("<table class='report'>");
требуется для этой таблицы изнутри программы менять свойства.
Пробую достучаться через
QApplication a(argc, argv);
a.setStyleSheet(
"""table { background: red; """
"""}"""
)
);
не фурычит, увы.
Но стиль виджетов меняется через этот механизм…
Как можно повлиять на стиль html, размещенного внутри виджета?
Зачем это нужно?
задача в том, чтобы полученный отчет (допустим, HTML-таблица), сгенерённый в дебрях СУБД в статическом виде можно было "скинами" приводить к общему стилю оформления программы. Стили хранились отдельно, в файле.
Для оформления программы — всё понятно.А вот к данным внутри виджетов как это применить – вопрос.
4 апреля 2010 в 23:03
Гм… сталкивался с подобным… Написал свой класс – если нужен – мыло mirvana-dmitry@mail.ru
3 апреля 2010 в 18:05
вот и я уже в сторону вебкита копаю.
а ручками менять контент, получаемый из БД — не есть правильный путь.Всё динамичное должно быть динамичным.
3 апреля 2010 в 14:05
setStyleSheet тут не поможит. Ибо он устанавливает qss стиль, т.е. стиль, применяемый именно к виджетам (а не к их контенту). В данном случае я бы поместил все внутри html, который лежит в QLabel. И ручками менял css и контент. Неудобно, зато работает. Или, как вариант, можно использовать QWebKit. Учитывая, что тут используется таблица, последний вариант наиболее приемлем.