- Заменить
QProgressBarна пользовательский класс- Добавить в класс возможность изменения цвета бара в зависимости от кол-ва жизней персонажа
- Добавить возможность изменять пороговое значение, при котором цвет меняется
- Добавить логику для восстановления жизней персонажа (можно аналогично нанесению урона, как уже реализовано)
- Добавить
QSliderиQLabelQSliderотвечает за изменение порогового значения для пользовательскогоQProgressBar, при котором меняется цветQLabelотображает текущее пороговое значение
- Все взаимодействие между объектами настроить с помощью сигналов и слотов
Возможные стили для пользовательского QProgressBar:
const QString kDangerStyle =
"QProgressBar::chunk {background: #F44336; Width: 20px; margin: 0.5px;"
"border: 1px solid black; border-radius:8px; Border-Radius: 4px;} "
"QProgressBar { text-align: center; font-size:14px; border-radius:8px; "
"color:black;}";
const QString kNormalStyle =
"QProgressBar::chunk {background: #009688; Width: 20px; margin: 0.5px; "
"border: 1px solid black; border-radius:8px; Border-Radius: 4px;} "
"QProgressBar { text-align: center; font-size:14px; border-radius:8px; "
"color:black;}";