[gelöst] QTreeWidgetItem Checkbox -> Checked-Signal?

Alles rund um die Programmierung mit Qt
Antworten
suamikim
Beiträge: 59
Registriert: 1. November 2009 15:58

[gelöst] QTreeWidgetItem Checkbox -> Checked-Signal?

Beitrag von suamikim »

Hallo zusammen,

ich hab eine QTreeWidget, mit vielen QTreeWidgetItems, die vor dem Text eine kleine Checkbox beinhalten (mittels setFlags & setCheckState).

Nun bräuchte ich für jedes Item ein Signal, welches mir sagt, dass die Checkbox ihren Zustand geändert hat (also von Checked zu Unchecked oder anders herum), weil ich dann ein paar Berechnungen neu durchführen muss.

Leider kann ich weder unter den QTreeItem-Signals, noch unter jenen von QTreeWidgetItem (hier finde ich in der Doku gar keine Signals...) etwas passendes finden.

Natürlich könnte ich zB. das itemClicked-Signal von QTreeWidget benutzen, allerdings würden die Berechnungen so nur unnötig oft durchgeführt werden, weil das Clicked-Signal ja auch kommt, wenn zB. nur auf den Text neben der Checkbox gedrückt wurde (und sich der Checked-Zustand also nicht verändert hat)...

Wie geht man sowas nun an?

danke, mfg
Zuletzt geändert von suamikim am 24. November 2009 14:23, insgesamt 1-mal geändert.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Das Model von QTreeWidget nehmen und das dataChanged()-Signal auswerten.

Oder ein eigenes Model schreiben.
otternase
Beiträge: 62
Registriert: 25. Januar 2008 12:20

Beitrag von otternase »

dataChanged() wäre ein Signal, welches nicht QTreeWidget, sondern das entsprechende QTreeWidgetItem sendet, da aus QAbstractItemModel kommend

für QTreeWidget müsste das Signal void itemChanged ( QTreeWidgetItem * item, int column ) es tun, oder?
suamikim
Beiträge: 59
Registriert: 1. November 2009 15:58

Beitrag von suamikim »

Sorry für die späte Rückmeldung. Bin erst jetzt dazugekommen das zu testen.

itemChanged vom tree reicht vollkommen!

Danke, mfg

mik
Antworten