cmessageanimatedialog.cpp cmessageanimatedialog.h ui_cmessageanimatedialog.h #include"cmessageanimatedialog.h" #include"ui_cmessageanimatedialog.h" cMessageAnimateDialog::cMessageAnimateDialog(QWidget*parent): QDialog(parent), ui(newUi::cMessageAnimateDialog), m_szMessage(""), m_lpTimer(0), m_iCount(0), m_iDirection(1) { ui->setupUi(this); } cMessageAnimateDialog::~cMessageAnimateDialog() { if(m_lpTimer) deletem_lpTimer; deleteui; } voidcMessageAnimateDialog::setTitle(constQString&szTitle) { setWindowTitle(szTitle); } voidcMessageAnimateDialog::setMessage(constQString&szMessage) { m_szMessage=szMessage; ui->m_lpText->setText(m_szMessage); if(m_lpTimer) deletem_lpTimer; m_lpTimer=newQTimer(this); connect(m_lpTimer,SIGNAL(timeout()),this,SLOT(update())); m_lpTimer->start(500); } voidcMessageAnimateDialog::update() { m_iCount+=m_iDirection; if(m_iCount==4) { m_iCount=2; m_iDirection=-1; } elseif(m_iCount==-1) { m_iCount=1; m_iDirection=1; } QStringsz=m_szMessage; for(intz=0;z<m_iCount;z++) sz.append("."); ui->m_lpText->setText(sz); }