Hallo @ all
ich habe gerade angefangen Snake zu programmieren und für das brauch ich ja einen QTimer, so dass eben jede Sekunde meine Methode aufgerufen wird.Quasi ein Intervall.
Ich habe den QTimer noch nie benutzt, darum weiss ich nicht wie der funktioniert. Auch verstehe ich die QT Referenz nicht ganz, was sie mir über den Timer erzählt.
Ich hoffe ihr könntet mir das erkläre:)
mfg timi19
keine Ahnung von QTimer
Re: keine Ahnung von QTimer
Eigentlich ist es doch in der Doku ziemlich gut erklärt:timi19 hat geschrieben: Ich habe den QTimer noch nie benutzt, darum weiss ich nicht wie der funktioniert. Auch verstehe ich die QT Referenz nicht ganz, was sie mir über den Timer erzählt.
http://doc.qt.nokia.com/latest/qtimer.html#details
Was genau ist denn unklar? Was hast du denn schon versucht?
Re: keine Ahnung von QTimer
Achso:idea:...In der Qt Hilfe ist der Timer viel schlechter erklärt^^solarix hat geschrieben:Eigentlich ist es doch in der Doku ziemlich gut erklärt:timi19 hat geschrieben: Ich habe den QTimer noch nie benutzt, darum weiss ich nicht wie der funktioniert. Auch verstehe ich die QT Referenz nicht ganz, was sie mir über den Timer erzählt.
http://doc.qt.nokia.com/latest/qtimer.html#details
Was genau ist denn unklar? Was hast du denn schon versucht?
Aufjedenfall versteh ich das Signal Prinzip nicht ganz.
Wo füge ich jetzt meine Methode bzw. Code rein, die dann jedesmal ausgeführt werden soll wenn der Timer abläuft.
Code: Alles auswählen
QTimer *timer = new QTimer(this);
connect(timer, SIGNAL(timeout()), this, SLOT(update()));
timer->start(1000);
-
Christian81
- Beiträge: 7319
- Registriert: 26. August 2004 14:11
- Wohnort: Bremen
- Kontaktdaten:
Wie wäre es wenn man erstmal bei den Grundlagen von Qt anfägnt anstatt gleich irgendwas riesiges zu programmmieren??
http://doc.qt.nokia.com/4.7/signalsandslots.html bzw. die ganzen Tutorials wären ein Anfang. Alles andere macht imo noch keinen Sinn.
http://doc.qt.nokia.com/4.7/signalsandslots.html bzw. die ganzen Tutorials wären ein Anfang. Alles andere macht imo noch keinen Sinn.
MfG Christian
'Funktioniert nicht' ist keine Fehlerbeschreibung
'Funktioniert nicht' ist keine Fehlerbeschreibung
Aha.. mich beschleicht das Gefühl, dass nicht der QTimer das Problem ist, sondern der Signal/Slot Mechanismus.. kann das sein?
In diesem Fall empfehle ich mal, dass du dir das
http://de.wikipedia.org/wiki/Signal-Slot-Konzept
gut durchliest..
Etwas ausführlicher (dafür ohne vollständiges Beispiel) ist die Qt-Doku: http://doc.qt.nokia.com/4.7/signalsandslots.html
recht gut finde ich auch das Tutorial von Qt4.4:
http://doc.qt.nokia.com/4.4/tutorials-tutorial.html
Da wird das auch sehr gut erklärt..
Bei konkreten Fragen helfen wir dann gerne weiter!
hth..
In diesem Fall empfehle ich mal, dass du dir das
http://de.wikipedia.org/wiki/Signal-Slot-Konzept
gut durchliest..
Etwas ausführlicher (dafür ohne vollständiges Beispiel) ist die Qt-Doku: http://doc.qt.nokia.com/4.7/signalsandslots.html
recht gut finde ich auch das Tutorial von Qt4.4:
http://doc.qt.nokia.com/4.4/tutorials-tutorial.html
Da wird das auch sehr gut erklärt..
Bei konkreten Fragen helfen wir dann gerne weiter!
hth..
Re: keine Ahnung von QTimer
connect da, wo du ihn brauchst... Also: Soll das sofort losgehen, wenn du ein Objekt deiner Klasse instantiierst, bietet sich doch der Konstruktor an. Ansonsten bastel dir selber eine Funktion, die aufgerufen werden muss, um den Timer zu starten.timi19 hat geschrieben:Wo füge ich jetzt meine Methode bzw. Code rein, die dann jedesmal ausgeführt werden soll wenn der Timer abläuft.
Immer wenn der Timer fertig ist, löst er das timeout-SIGNAL aus. Wie du darauf reagieren willst, musst du in deinem SLOT (den du im connect angibst) selber sagen. Im Code-Beispiel aus der Doku ist das "update()" (evtl. von QWidget), das kannst du aber selber nennen wie du willst.
Sollte connect() für dich was vollkommen neues sein, bietet sich ein Blick in die offiziellen Qt-Examples und das Tutorial an. Da wird eigentlich alles erklärt.
// edit:
Drei Menschen, ein Gedanke, eine nervige Katze...