In der ersten Spalte will ich permanent eine Checkbox anzeigen, die man natürlich auch schalten kann. Das anzeigen der Checkbox, permanent, ist kein Problem:
Code: Alles auswählen
void MyDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option,
const QModelIndex &index) const
{
QStyleOptionViewItemV2 opt = QItemDelegate::setOptions(index, option);
switch(index.column()){
case 0:{
QStyleOptionButton newopt;
newopt.rect = opt.rect;
newopt.palette = opt.palette;
newopt.palette.setColor(QPalette::ButtonText, QColor(Qt::black));
if (index.data().toBool())
newopt.state |= QStyle::State_On;
QApplication::style()->drawControl(QStyle::CE_CheckBox, &newopt, painter);
...
}
QWidget *MyDelegate::createEditor(QWidget *parent,
const QStyleOptionViewItem &option ,
const QModelIndex & index ) const
{
switch(index.column())
{
case 0:
{
QCheckBox *checkBox = new QCheckBox(parent);
//checkBox->setLayoutDirection(Qt::RightToLeft);
return checkBox;
...
}
Code: Alles auswählen
newopt.direction = Qt::RightToLeft;
Code: Alles auswählen
checkBox->setLayoutDirection(Qt::RightToLeft);
Aber ich hätte es gern zentriert! Ich habe leider keine Idee mehr, wie ich das hin bekomme! Wenn von Euch jemand eine Idee hätte wäre ich sehr dankbar!!!