Seite 1 von 1

[gelöst] QTreeView Zeilenhöhe anpassen

Verfasst: 31. Januar 2012 16:16
von schmökertante
Hallo,
ich habe ein QTreeView welches Ähnlichkeit hat mit dem Property Editor aus dem Qt Designer.
Jetzt habe ich nur ein Problem, die Zeilenhöhe ist für die Darstellung der Editiermöglichkeiten (LineEdit, ComboBox, SpinBox, etc.) zu klein, das sieht alles so gequetscht aus.
Wie kann ich die Zeilenhöhe anpassen?

Wenn ich jedem Eintrag ein Icon hinzufüge, wird die Höhe dem Icon angepasst, ich will aber kein Icon haben.

Vielleicht hat jemand ne Idee, wäre echt super, danke schon mal...

Grüsse
Mario

Re: [gelöst] QTreeView Zeilenhöhe anpassen

Verfasst: 15. Februar 2012 11:03
von schmökertante
Hallo,
da es zu diesem Thema noch keine Beiträge gibt und der eine oder andere vielleicht auch schon mal vor dem Problem gestanden hat, hier die Lösung:

Einfach die Funktion sizeHint aus dem QItemDelegate überladen und eine Mindestgröße zurückgeben.

Code: Alles auswählen

QSize PropertyDelegate::sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const
{
  QSize size = QItemDelegate::sizeHint(option, index);
  if(size.height() < 18) size.setHeight(18);
  return size;
}
Grüsse
Mario

PS: Man muß nur lange genug in der Qt Sourcen suchen, dann findet man (fast) alles!

Re: [gelöst] QTreeView Zeilenhöhe anpassen

Verfasst: 15. Februar 2012 12:04
von archer
Es gibt auch die Rolle Qt::SizeHintRole die man im Modell implementieren kann.