#include "xprogressbar.h" XProgressBar::XProgressBar(QWidget *parent) : QWidget(parent) { m_progress = new QProgressBar(); m_layout = new QHBoxLayout(); m_layout->addWidget(m_progress); m_layout->setMargin(0); m_progress->setFixedHeight(15); m_progress->setTextVisible(true); this->setLayout(m_layout); } XProgressBar::~XProgressBar() { delete m_progress; delete m_layout; } void XProgressBar::setProgress(int state,int value) { if(state>=0 && state<3) { m_progress->setValue(value); m_progress->setFormat("ÉÏ´«£º"+QString::number(value)+"%"); m_progress->setProperty("class","upload"); } else if(state>=3) { m_progress->setMaximum(0); m_progress->setMinimum(0); m_progress->setProperty("class","check"); } else { m_progress->setValue(value); m_progress->setFormat(QString::number(value)+"%"); m_progress->setProperty("class","normal"); } }