QListWidget itemclicked

Alles rund um die Programmierung mit Qt
Antworten
Stash
Beiträge: 29
Registriert: 9. Mai 2007 16:33

QListWidget itemclicked

Beitrag von Stash »

hallo,
ich habe folgendes problem.

ich habe 3 daten in ein qlistwidget über ein qlistwidgetitem eingelesen. hat auch soweit geklappt.

aufbau:

1 456687.999 3444433.993
2 344343.222 3445353.223
3 334232.123 3553332.345
...

nur jetzt würd ich gern, wenn ich einen eintrag in dem listwidget selektiere, z.b. den 2., dass dann die zwei koordinatenwerte (hab ich schön in arrays gespeichert) mit anderen koordinaten (auch in arrays drin) verglichen werden und wenn sie übereinstimmen eine Textmeldung ausgegeben wird.

hab in der doku gesehen, dass es den Befehl QListWidget::itemClicked gibt, nur weiß ich nicht, wie ich den anwenden soll. Muss ich den dann noch in meiner Header datei hinschreiben, wenn es ein Signal ist oder wie mach ich des.

ich hoffe jemand kann mir da helfen, oder mir ein Beispiel von irgendwo nennen mit etwas ähnlichem.

danke im voraus

mfg stash
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Re: QListWidget itemclicked

Beitrag von macman »

Stash hat geschrieben:hab in der doku gesehen, dass es den Befehl QListWidget::itemClicked gibt,
Das ist ein Signal. Das connectest Du mit deiner Funktion, die Du vorher als Slot deklariert hast, und gut ist. Lies dazu die Doku, Stichwort 'Signals and Slots'.
Stash
Beiträge: 29
Registriert: 9. Mai 2007 16:33

Beitrag von Stash »

ok, des hab ich noch hingekriegt (trotzdem danke). aber wie mach ich jetzt weiter. dieses QListWidgetItem* ist doch jetzt eine Art Variable, mit der ich dann weiter arbeiten kann oder?

aber wie?

danke für eure hilfe

mfg stash
macman
Beiträge: 1738
Registriert: 15. Juni 2005 13:33
Wohnort: Gütersloh
Kontaktdaten:

Beitrag von macman »

Das ist ein Pointer auf dein Item. Ich empfehle dir etwas in den Examples herum zu stöbern, da findet sich bestimmt ein derartiger Anwendungsfall.
UmmonTL
Beiträge: 16
Registriert: 8. März 2007 10:31

Beitrag von UmmonTL »

Das QListWidgetItem* ist ein Pointer auf die angewählte Zelle deiner Liste. Du kannst darüber u.a. den Text auslesen den du siehst und so an die Daten kommen. Eleganter ist aber normalerweise wenn du eine interne Repräsentation deiner Liste hast (z.B. einen Array in der gleichen Größe wie die Liste) und dir von dem QListWidget per

Code: Alles auswählen

int row ( const QListWidgetItem * item ) const
den index des Items geben lässt, dieser müsste dann ja in deiner internen Liste auf die gleichen Daten verweisen.
Antworten