3
我想獲取父背景並將其設置爲複選框背景色。我有drows複選框這種塗料方法:什麼是繪製QStyleOptionButton QStyle :: CE_CheckBox背景的方法?
void paint(QPainter* painter,
const QStyleOptionViewItem& option,
const QModelIndex &index) const
{
// Get item data
bool value = index.data(Qt::UserRole).toBool();
QString text = index.data(Qt::DisplayRole).toString();
// Fill style options with item data
const QStyle *style = QApplication::style();
QStyleOptionButton opt;
opt.state |= value ? QStyle::State_On : QStyle::State_Off;
opt.state |= QStyle::State_Enabled;
opt.text = text;
opt.rect = option.rect;
// Draw item data as CheckBox
style->drawControl(QStyle::CE_CheckBox,&opt,painter);
}
但我要如何設置此複選框的背景顏色?
錯誤C2039: 'backgroundBrush':是不是成員'QStyleOptionButton' 錯誤C2039:'backgroundColor':不是'QStyleOptionButton'的成員 – user63898 2012-02-10 13:02:38
謝謝,但仍不好: 錯誤C2664:'QStyleOption :: initFrom':不能將參數1從'const CheckBoxListDelegate * const'轉換爲'const QWidget *' – user63898 2012-02-10 17:03:56