[Qt-interest] Animated QProgressBar in a QTableView

Omar AKHAM crtx.omar at gmail.com
Thu Sep 2 00:54:34 CEST 2010


Hi,

In QtDesigner, putting a QProgressBar and setting it's min = max = 0, 
the result is an animated QProgressBar (look like a WaitingBar without 
progression). How to have it in a QTableView (using a custom delegate) ? 
I tried to do it, but the ProgressBar is not animated.

Custom delegate code (reimplementation of paint function) :

    void StatusDelegate::paint(QPainter *painter, const
    QStyleOptionViewItem &option, const QModelIndex &index) const
    {
         int status = index.data(Qt::DisplayRole).toInt();

         switch(status)
         {
         case 1 :
             {QStyleOptionProgressBar waitingBar;
             waitingBar.rect = option.rect;
             waitingBar.maximum = 0;
             waitingBar.progress = 0;
             waitingBar.text = QString::number(waitingBar.progress)+"%";
    //        waitingBar.textVisible = true;
             QApplication::style()->drawControl(QStyle::CE_ProgressBar,
    &waitingBar, painter);
             }
             break;

         default:
             QStyledItemDelegate::paint(painter,option,index);
             break;
         }
    }


Regards,
Omar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.qt-project.org/pipermail/qt-interest-old/attachments/20100901/fa431e40/attachment.html 


More information about the Qt-interest-old mailing list