Russian Qt Forum

Qt => Вопросы новичков => Тема начата: Pavel_ от Апреля 09, 2016, 12:41



Название: Перестал меняться цвет QProgressBar с переходом от Qt5.4 к Qt5.5(6)
Отправлено: Pavel_ от Апреля 09, 2016, 12:41
Проект создан в Qt5.4, цвет индикатора заполнения QProgressBar перед компиляцией спокойно менял как хочу.
В Qt5.5 (как и 6) цвет никак не изменяется. Работаю в обычном фрэймворке от Qt, QtCreator 3.4.2.
В файле "mainwindow.ui" все цветовые теги изменяются верно. В каталоге компиляции есть файл "ui_mainwindow.h" - не могу сказать верно там все или нет. Еще есть "moc_mainwindow.cpp", но он вроде не при чем.
Вопроса два:
1. В чем дело с цветом ?
2. Как в Qt5.5 или 6 поменять цвет QProgressBar ?


Название: Re: Перестал меняться цвет QProgressBar с переходом от Qt5.4 к Qt5.5(6)
Отправлено: kambala от Апреля 09, 2016, 18:47
все работает, Qt 5.5.1 / Mac OS X
Код
C++ (Qt)
   QProgressBar p;
   p.setRange(0, 0);
   p.setStyleSheet("QProgressBar::chunk { background-color: red; }");
   p.show();


Название: Re: Перестал меняться цвет QProgressBar с переходом от Qt5.4 к Qt5.5(6)
Отправлено: Pavel_ от Апреля 09, 2016, 19:51
Спасибо! Да, но я имел в виду невозможность изменить цвет еще перед компиляцией в gui-файле. В первом сообщении это поправил.
Похоже что запись о цвете, которую делаю в графическом редакторе, каким-то образом, игнорируется.
Меняю цвет Highlight в Palette. Причем изменения отсутствуют уже прямо в редакторе - в "старых" Qt все хорошо.
Эти изменения попадают в файл mainwindow.ui, и при компиляции в файл ui_mainwindow.h, в котором уже не вижу своих изменений. Там для моего ProgressBar создается и применяется объект QPalette и никаких моих цветов не задается.

Собственно то, что Вы сказали и собирался применять далее, если не разберусь.


Название: Re: Перестал меняться цвет QProgressBar с переходом от Qt5.4 к Qt5.5(6)
Отправлено: kambala от Апреля 09, 2016, 19:53
так поменяй цвет стилем, зачем палитрой. стиль тоже можно в дизайнере указать.


Название: Re: Перестал меняться цвет QProgressBar с переходом от Qt5.4 к Qt5.5(6)
Отправлено: Pavel_ от Апреля 09, 2016, 20:06
Кстати, менять стиль в редакторе надо каждому компоненту индивидуально и происходит это через те же свойства QPalette.
В целом странная ситуация: графический редактор специально создан для работы со стандартными компонентами, и вдруг в редакторе невозможно изменить цвет компонента, который нужно задать один раз и больше никогда не трогать,. Если такой компонент один, то еще куда ни шло, а если их 50, то уже крайне неудобно. Предварительно списываю все это на "новшества" Qt5.5 и 5.6 (((

Может это наведет на какие мысли? Компилятор говорит:
Возникли следующие предупреждения при разборе информации о типах QML библиотеки C:/Qt/Qt5.5.0/5.5/mingw492_32/qml:
<dump of C:\Qt\Qt5.5.0\5.5\mingw492_32\qml>:1:24: Чтение разделов версии 1.1.
<dump of C:\Qt\Qt5.5.0\5.5\mingw492_32\qml>:10:5: Допустимы только определения объектов Component и ModuleApi.
Влияет ли это к потере управлением цветом или нет не знаю.

Похоже, я породил флуд, а не актуальную тему. Прошу модератора, если возможно, грохнуть ее. Все участникам )) спасибо!