Seite 1 von 1

Spaltengroesse veraendern, wenn die Tabellengroesse aendert

Verfasst: 5. Dezember 2006 11:41
von jc-denton
Wie kann ich die groesse einer Spalte von einer QTableView Instanz veraendern, wenn sich die groesse der Tabelle veraendert? (aehnlich wie bei Amarok, allerdings habe ich dort den Code nicht ganz begriffen..)

Dazu habe ich versucht das resizeEvent zu ueberschreiben (in Java):

Code: Alles auswählen

	protected void resizeEvent(QResizeEvent e) {
		super.resizeEvent(e);
		double change = ((double)e.oldSize().width()) /((double)e.size().width());
		view.setColumnWidth(..);
	}     
Allerdings muesste ich dazu die ColumnWidth vor dem veraendern der Groesse haben, und ausserdem denke ich das es in QT sowieso eine viel einfachere Loesung gibt ;-)

Verfasst: 5. Dezember 2006 12:37
von macman
tableView->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
Geht auch für einzelne oder mehrere Spalten.

Danke!

Verfasst: 6. Dezember 2006 08:50
von jc-denton
Ist es auch moeglich, das nur bei einer Spalte die Groesse veraendert wird?

Verfasst: 6. Dezember 2006 09:03
von macman
Ja sach mal, was steht denn da?
macman hat geschrieben:tableView->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
Geht auch für einzelne oder mehrere Spalten.
Die Lösung findet sich in der Doku.