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
QPushButton mehrfach hintereinander klicken (Taschenrechner)
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
QPushButton mehrfach hintereinander klicken (Taschenrechner)
[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"
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"
- Dateianhänge
-
- pbTest.zip
- Qt3-Dialog
- (8.87 KiB) 90-mal heruntergeladen
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
solved: QPushButton mehrfach hintereinander klicken
Es läuft - das war's!Christian81 hat geschrieben:Du setzt int_aktuellerWert nicht mehr.
Ich würde übrigens auf globale Variablen verzichten und sie statt dessen als Klassenmember implementieren.
So blind muss mer erstemol sein...
Vielen Dank, Christian!
Grüße,
Michaeö