[gelöst] QList Einträge zur Laufzeit erweitern

Alles rund um die Programmierung mit Qt
Antworten
Alf79
Beiträge: 5
Registriert: 8. Oktober 2012 15:25

[gelöst] QList Einträge zur Laufzeit erweitern

Beitrag von Alf79 »

Guten Tag,

ich habe eine QList (myList) als Membervariable in meiner Klasse die von QAbstractTableModel abegeleitet wurde. Nun möchte ich in dieser QList weitere QLists, mit QVariants darin, anlegen, d.h. QList<QList<QVariant> >.

Das ganze Konstrukt wird in einer Tabelle angezeigt. Da in regelmäßigen Abständen neue Daten hinzukommen, soll in "insertRows(...)" des Models eine QList<QVariant> der Membervariable hinzugefügt werden.

Laut meinem Verständnis:

Code: Alles auswählen

bool MyTableModel::insertRows(int position, int rows, const QModelIndex &index)
{
   QList<QVariant> nextList;
   myList.append(nextList);
}
// hier ist "nextList" aber schon wieder ungültig(?)
D.h. ich müsste die QList "nextList" mit "new" anlegen, und die Membervariable dahingehend ändern: QList<QList<QVariant>* > oder? Ist das der richtige Vorgehensweg? Und wie zerstöre ich dieses Konstrukt dann wieder effizient im Destruktor?

Danke!

Grüße,
Alfred
Zuletzt geändert von Alf79 am 23. Oktober 2013 08:46, insgesamt 1-mal geändert.
archer
Beiträge: 306
Registriert: 2. Februar 2006 09:56

Re: QList Einträge zur Laufzeit erweitern

Beitrag von archer »

Wenn dein Member myList, vom Typ QList<QList<QVariant> > ist kannst du das so lassen.
nextList wird als Kopie in myList angehängt. Und myList wird dann auch beim Löschen deiner
Klasseninstanz mit gelöscht.
Alf79
Beiträge: 5
Registriert: 8. Oktober 2012 15:25

Re: QList Einträge zur Laufzeit erweitern

Beitrag von Alf79 »

Danke für die Antwort, das hat mein Problem gelöst.
Antworten