setValue auf QtFormElement, ohne Signal auszulösen?Geht das?

Alles rund um die Programmierung mit Qt
Antworten
SteveXP
Beiträge: 22
Registriert: 11. Januar 2006 19:15

setValue auf QtFormElement, ohne Signal auszulösen?Geht das?

Beitrag von SteveXP »

Hallo,

normalerweise werden Form-elemente (zb eine SpinBox,...) so verbunden, dass sie bei valueChanged ein Signal an das Programm senden.

Wenn ich jetzt aber den Wert der SpinBox vom Programm aus ändere (signal vom Programm zur Spinbox) dann sendet die SpinBox dummerweise auch wieder ein signal an mein Programm zurück.

Wie kann man das vermeiden?

Hat man zB zwei Form Elemente, die über eine Formel zusammenhängen, (ändert man das erste soll sich das zweite anpassen, ändert man das zweite soll sich das erste anpassen), so ergibt das bei mir eine rekursive abhängigkeit... :? :?:


Gruß,
Steve
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

QObject::blockSignals() ?
SteveXP
Beiträge: 22
Registriert: 11. Januar 2006 19:15

Beitrag von SteveXP »

danke, das scheint genau das richtige zu sein.

Wenn man allerdings QtDesigner verwendet gibt es da ein Problem: Die QObject elemente sind alle in aus dem .UI-File generierten Dateien.

Und da der Hauptteil meines Programm im "centralwidget" abläuft habe ich nur einen Zeiger auf das parent QWidget. So wie ich das sehe kann ich mit dem Zeiger auf das parent QWidget nicht die anderen elemente meiner GUI ansprechen.... ?

mh... knifflige Sache...
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

doch mit findChild, siehe Calculator-Beispiel
Antworten