[gelöst] Objekte in QListView oder andere Variante gesucht

Alles rund um die Programmierung mit Qt
Antworten
Maxubuntu
Beiträge: 20
Registriert: 18. April 2007 19:46
Wohnort: Flensburg
Kontaktdaten:

[gelöst] Objekte in QListView oder andere Variante gesucht

Beitrag von Maxubuntu »

Hallo.

Momentan schreibe ich an einem Programm, welches die Vektorrechnung der 11. Klasse beherrscht. (Qt4, C++)

Mein Problem ist das Zwischenspeichern der Punkte, Vektoren, Geraden. (Sind alles Klassen) Man soll sie in Listen auswählen können.

Ich habe das schonmal mit C# und .NET gemacht, indem ich die eine ListBox einfach mit meinen Objekten gefüllt habe. Dazu habe ich noch die Methode ToString überschrieben. Zugriff per listBox.selectedItem();

Hat jemand einen Tipp, wie ich das in Qt4 realisiere?

Vielen Dank!

P.S. Für Interessiere habe ich meine bisherige Arbeit angehängt.
Dateianhänge
FerdiMathPlusPlus-0.0.0.tar.gz
(7.18 KiB) 153-mal heruntergeladen
Zuletzt geändert von Maxubuntu am 18. Mai 2007 13:43, insgesamt 2-mal geändert.
andy72
Beiträge: 39
Registriert: 5. April 2007 07:51

Beitrag von andy72 »

Hi,

in QT4 musst Du zunächst ein Model erstellen, der Einfachheit halber kannst Du einStringListModel aus einer QStringList erstellen. Wichtig sind die Funktionen QVariant data(...) und rowCount, den Rest muss Du ggf.anpassen - alsgutes Beispiel kannst Du das Beispiel aus den QT4-Tutorials nehmen.

Wenn das Model programmiert ist, übergibst Du in der QListView das Model, und der Rest ist dann mit Signalen und Slots realisierbar ;)

LG
Andy
Volker
Beiträge: 343
Registriert: 30. Juni 2005 05:27

Beitrag von Volker »

Man kann auch einfacher z.B. das QListWidget verwenden, dort gibt es eine Funktion setData() bzw. data() die Möglichkeit zur Speicherung einer QVariant Variablen bietet. Um dort eigene Daten zu speichern gibt es zwei Möglichkeiten, entweder man benutzt den allgemeinen void* Typ oder Q_DECLARE_METATYPE
Bitte seid so nett und ändert den Titel von Beiträgen die gelöst wurden, auf [gelöst] Beitragstitel
Maxubuntu
Beiträge: 20
Registriert: 18. April 2007 19:46
Wohnort: Flensburg
Kontaktdaten:

Beitrag von Maxubuntu »

Hallo!

Ich habe es jetzt gerade eben hinbekommen. Es brauchte zwar viel Zeit, bis ich soweit war, eure Tipps richtig verstehen zu können, aber sie haben definitiv geholfen.

Danke! :D

P.S.

Ich habe mich für die Variante mit dem QListWidget entschieden, dass ich mit QListWidgetItems füttere, die wiederum ein QVariant mitführen, welche meine eigene Klasse beherbergen, die ich vorher mit Q_DECLARE_METATYPE angemeldet habe ...
Antworten