Spaltengroesse veraendern, wenn die Tabellengroesse aendert

Alles rund um die Programmierung mit Qt
Antworten
jc-denton
Beiträge: 9
Registriert: 5. Dezember 2006 11:35

Spaltengroesse veraendern, wenn die Tabellengroesse aendert

Beitrag 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 ;-)
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

tableView->horizontalHeader()->setResizeMode(QHeaderView::Stretch);
Geht auch für einzelne oder mehrere Spalten.
jc-denton
Beiträge: 9
Registriert: 5. Dezember 2006 11:35

Danke!

Beitrag von jc-denton »

Ist es auch moeglich, das nur bei einer Spalte die Groesse veraendert wird?
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag 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.
Antworten