QItemDelegate und QpushButton sowie RichText
Verfasst: 3. Mai 2007 15:08
Hi,
ich bin noch relativ neu in QT. Ich möchte in einem QTableWidget in einer Spalte RichText darstellen(also damit HTML-Code geht) und in einer anderen Spalte möchte ich gerne einen QPushButton haben(weniger wichtig).
Allerdings hab ich keine so richtige Idee wie das anstelle. Bis jetzt habe ich ein Delegate erstellt und ich denke ich muss nur die paint- und sizeHint-Methoden überschreiben.
Für die sizeHint-Methode hab ich überhaupt keine Idee. Meine aktuelle paint-Methode schaut bisher so aus:
Dann wird zwar die erste Zelle(Zeile 0, Spalte 0) in RichText dargestellt, aber die anderen Zeilen(jeweils Spalte 0) sind leer oder nicht sichtbar.
Ich vermute mein Problem liegt bei option.rect.
Hat jemand eine Idee?
Gruß,
eht16
ich bin noch relativ neu in QT. Ich möchte in einem QTableWidget in einer Spalte RichText darstellen(also damit HTML-Code geht) und in einer anderen Spalte möchte ich gerne einen QPushButton haben(weniger wichtig).
Allerdings hab ich keine so richtige Idee wie das anstelle. Bis jetzt habe ich ein Delegate erstellt und ich denke ich muss nur die paint- und sizeHint-Methoden überschreiben.
Für die sizeHint-Methode hab ich überhaupt keine Idee. Meine aktuelle paint-Methode schaut bisher so aus:
Code: Alles auswählen
void RichTextDelegate::paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const
{
if (index.column() == 0)
{
QVariant value = index.data(Qt::DisplayRole);
QTextDocument *doc = new QTextDocument();
doc->setHtml(value.toString());
doc->drawContents(painter, option.rect);
}
else
QItemDelegate::paint(painter, option, index);
}
Ich vermute mein Problem liegt bei option.rect.
Hat jemand eine Idee?
Gruß,
eht16