请问如何修改QStyledItemDelegate中进度条的值???
在Qt QAbstractItemDelegate 类中,有一个例子 Package Manage
里面通过自定义委托,继承QStyledItemDelegate.,实现了绘制进度条显示数据的功能。
但是由于这里面的进度条是QStyleOptionProgressBar,不是一个Widget。
后期如果Model中的数据有变化,这些进度条的值如何随时更新变化呢?????
进度条例子
void WidgetDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const { if (index.column() == 1) { int progress = index.data().toInt(); QStyleOptionProgressBar progressBarOption; progressBarOption.rect = option.rect; progressBarOption.minimum = 0; progressBarOption.maximum = 100; progressBarOption.progress = progress; progressBarOption.text = QString::number(progress) + "%"; progressBarOption.textVisible = true; QApplication::style()->drawControl(QStyle::CE_ProgressBar, &progressBarOption, painter); } else QStyledItemDelegate::paint(painter, option, index);