カスタムデリゲートを持つ QListView があります
カスタム デリゲート ペイント メソッド:
QStyleOptionViewItemV4 opt = option;
initStyleOption(&opt,index);
opt.decorationSize = QSize(deco_size,deco_size);
opt.decorationAlignment |= Qt::AlignCenter;
opt.displayAlignment |= Qt::AlignCenter;
opt.decorationPosition = QStyleOptionViewItem::Top;
opt.font.setBold(true);
const QWidget *widget = opt.widget;
QStyle *style = widget ? widget->style() : QApplication::style();
style->drawControl(QStyle::CE_ItemViewItem,&opt,painter);
私の問題は、 QListView::item のスタイルシートを設定した場合です。
#lv::item:selected:active { background: red; }
うまくいきません!
内部を使用している場合、カスタムデリゲートはありません。すべて問題ありません。
2. カスタム デリゲートを使用して装飾アイコンをテキストの上部に配置するだけです。アイコンを強制的に上部に表示するスタイルシート オプションはありますか?