QListView zeigt meine Items nicht an

Alles rund um die Programmierung mit Qt
Antworten
Goddchen
Beiträge: 12
Registriert: 18. Oktober 2006 15:12
Kontaktdaten:

QListView zeigt meine Items nicht an

Beitrag von Goddchen »

hi leute, ich hab da ein problem. ich habe ein ListModel gemacht und dann ein ListView mit dem ListModel verknüpft über ->setModel().
so... so, nun hab ich ein paar messageboxes zur kontrolle eingebaut... das ganz läuft folgendermaßen ab...
wenn ich ein item bei model adde dann wird es auch zum der privaten liste des models hinzugefügt... rowCount() liefert die richtige anzahl zurück. jedoch wird data() nur ein einziges mal für das erste Element aufgerufen, egal wie viele drin sind... und in der ListView steht dann gar nix drin :(
btw ich benutze qt4 unter windows...

vllt könnt ihr mir weiter helfen

Gr33tz Goddchen
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Präsentier doch mal den Code vom Model...
Goddchen
Beiträge: 12
Registriert: 18. Oktober 2006 15:12
Kontaktdaten:

Beitrag von Goddchen »

http://svn.sourceforge.net/viewvc/gps/

hier findet ihr beides. header und implementierung... (ComputerListModel.h/cpp)
und das Modell wird initialisiert in MainWindow...

ich frag mich, ob der view das bemerkt wenn ich etwas zum modell adde? muss man nicht irgendwie aktualisieren() aufrufen oder ähnliches? ein signal emitten, damit der view das mitkriegt?
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Wie ich es mir schon fast gedacht hatte, fehlt dort ein beginInsertRows und ein endInsertRows. Sieh dir mal die Dokumentation dazu in QAbstractItemModel an.

Code: Alles auswählen

beginInsertRows(QModelIndex(), ComputerList.count(), ComputerList.count());
ComputerList.append(comp);
endInsertRows();
Goddchen
Beiträge: 12
Registriert: 18. Oktober 2006 15:12
Kontaktdaten:

Beitrag von Goddchen »

hey das wars, DANKE :)
davon stand in dem beispiel in der doku leider nix :(
Antworten