Hi guys, I have the same question, I know it was a long time ago when he was asked. but I need help, I tried to use your method, but my program is in love
need help thanks
void Q2ProgressBar::paintEvent(QPaintEvent* ) { QRegion rightRect(rect()); QRegion leftRect(rect()); QPainter* painter; rightRect = rightRect.subtracted(leftRect); painter->setClipRegion(rightRect); painter->setPen(text()=="50%" ? "red" : "green"); painter->drawText(rect(), text(), QTextOption(Qt::AlignAbsolute| Qt::AlignHCenter| Qt::AlignVCenter)); if (!leftRect.isNull()) { painter->setPen(text()=="50%" ? "green" : "red"); painter->setClipRect(leftRect); painter->drawText(rect(), text(), QTextOption(Qt::AlignAbsolute| Qt::AlignHCenter| Qt::AlignVCenter)); } }
this is the same code as the preview
Omar messari
source share