Seite 1 von 1

QPushButton mehrfach hintereinander klicken (Taschenrechner)

Verfasst: 13. August 2008 10:02
von micber
Ich programmiere gerade an einer kleinen, taschenrechnerähnlichen Anwendung ("Darts Calculator", Dialog unter Qt3), und habe ein Problem:

Die Ziffern des Taschenrechners habe ich als QPushButtons angelegt.
Beim ersten Klick auf einen solchen Button wird auch brav die hiermit verbundene Aktion ausgelöst. Drücke ich den selben Butto jedoch nochmals, ohne vorher einen anderen Button betätigt zu haben, so geschieht rein garnix.

Ich bin relativ unerfahren in der QT3-Programmierung, vermute aber, dass man dieses Phänomen irgendwie umgehen können muss. Der KCalc funktioniert ja auch nach dem Prinzip?

Kann mir jemand sagen, wie ich meinem Dialog mitteilen kann, dass er Events von ein- und demselben Button mehrfach hintereinander zulässt?

Dankbar für jeden Hinweis,

Michael

Verfasst: 13. August 2008 10:55
von Christian81
Zu wenig Informationen, zu alte Qt-Version. Poste mal ein wenig Quelltext.

QPushButton mehrfach hintereinander klicken (Taschenrechner)

Verfasst: 13. August 2008 11:53
von micber
[quote="Christian81"]Zu wenig Informationen, zu alte Qt-Version. Poste mal ein wenig Quelltext.[/quote]

Hallo Christian, vielen Dank für Deine Antwort!
Qt3 ist alt, das ist wahr. Aber da ich als Einsteiger in Qt als Lektüre nur "C++ Gui-Programmierung mit Qt3" zur Verfügung habe, benutze ich es eben.

Ich habe das Problem mal in einem nicht so umfangreichen Dialog nachgestellt, der Quellcode ist im Anhang. In diesem Gui soll einfach immer dann, wenn der QPushButton gedrückt wird, 20 zum bestehenden Wert addiert, und das Ganze im QTextLabel tlErgebnis ausgegeben werden. Das klappt auch beim ersten Klick, jedoch nicht bei allen Weiteren. Das selbe Problem wie bei meinem Darts Calculator...

Die Routinen zur Berechnung und zur Reaktion auf clicked() befinden sich in der Datei "pbTest.ui.h"

Verfasst: 13. August 2008 12:18
von Christian81
Du setzt int_aktuellerWert nicht mehr.
Ich würde übrigens auf globale Variablen verzichten und sie statt dessen als Klassenmember implementieren.

solved: QPushButton mehrfach hintereinander klicken

Verfasst: 13. August 2008 13:50
von micber
Christian81 hat geschrieben:Du setzt int_aktuellerWert nicht mehr.
Ich würde übrigens auf globale Variablen verzichten und sie statt dessen als Klassenmember implementieren.
Es läuft - das war's! :D
So blind muss mer erstemol sein...

Vielen Dank, Christian!

Grüße,

Michaeö