Seite 1 von 1

QTableWidget resize vertical header

Verfasst: 21. November 2007 10:13
von lehrig
Unter Qt3 habe ich den Vertical Header mit
t->setLeftMargin(width);
einstellen können.

Unter Qt4 finde ich keine entsprechende Möglichkeit.
Momentan behelfe ich mir mit:
t->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents);

Wie kann ich die Header-Breite explizit setzen ?
Mit resizeSection() verändert sich nicht die Breite,
sondern die Höhe.

Verfasst: 21. November 2007 12:03
von lehrig
Hab die Sache jetzt hinbekommen.
Es sieht zwar nicht logisch aus, aber funktioniert.
Das ResizeToContents ist eigentlich unlogisch,
aber ohne das wird die linke obere Ecke nicht angepasst.

t->verticalHeader()->setResizeMode(QHeaderView::Fixed);
t->verticalHeader()->setFixedWidth(width);
t->verticalHeader()->setResizeMode(QHeaderView::ResizeToContents);
t->verticalHeader()->resizeSection(0,width);
t->verticalHeader()->setResizeMode(QHeaderView::Fixed);

Verfasst: 21. November 2007 12:18
von upsala
Oder suchst du das hier:
void QAbstractScrollArea::setViewportMargins ( int left, int top, int right, int bottom ) ?

Verfasst: 21. November 2007 12:37
von lehrig
Das hatte ich ausprobiert.

Ich hatte mir zunächst die aktuellen Werte mit
getViewportMargins
geholt, den left Wert geändert und mit
setViewportMargins
geupdated.

Hat leider nicht funktioniert.