Seite 1 von 1

[gelöst] tableView, Zugriff auf versteckte Spalten

Verfasst: 3. Juli 2009 11:58
von univeda
Ich verwende ein tableView bei dem ich diverse Spalten ausblende:

Code: Alles auswählen

ui->tableView->hideColumn(7);
ui->tableView->hideColumn(11);
ui->tableView->hideColumn(12);
Nun möchte ich aber trotzdem auf die Inhalte der ausgeblendeten Spalten zugreifen, mein Versuch dies testweise mit einer QMessageBox zu tun schlägt fehl. Die QMessagebox bleibt leer, obwohl in dem entsprechenden Feld (Zeile 1, Spalte 11) ein Inhalt steht:

Code: Alles auswählen

QMessageBox debugMsg;
debugMsg.setText(ui->tableView->model()->index(1, 11).data().toString());
debugMsg.exec();
Wie greife ich sinnvollerweise auf die Inhalte eines tableViews zu, auch wenn es sich um ausgeblendete Spalten handelt?

Verfasst: 3. Juli 2009 16:18
von univeda
Oh... der index beginnt bei 0, nicht bei 1... da kann nicht angezeigt werden. :oops:

So habe ich das jetzt gelöst:

Code: Alles auswählen

ui->tableView->hideColumn(7);
ui->tableView->hideColumn(11);
ui->tableView->hideColumn(12);

QModelIndex zelle = model->index(6, 11, QModelIndex());
QString text = model->data(zelle, Qt::DisplayRole).toString();

QMessageBox debugMsg;
debugMsg.setText(text);
debugMsg.exec();
Damit zeige ich den Inhalt von Spalte 12 in Zeile 7 an.