Hallo,
ich fange gerade mit Qt an und arbeite zu diesem Zweck das Tutorial von Trolltech durch. Zu jedem Teil des Tuts gibts am Ende ja meist ein paar Aufgaben und für eben diese Aufgaben hätte ich gern gewusst ob es irgendwo ne Musterlösung dazu gibt. Einerseits möchte ich wissen ob ich, wenn ich die Aufgabe gelöst habe, den "besten" weg gefunden habe und andererseits beiße ich mir grad die zähne an einer Aufgabe aus und brauch einfach mal einen Gedankenanstoß.
Danke schonmal.
Bye
Ivanhoe
Lösung Tutorial
Musterlösungen sind mir nicht bekannt. Jeder hat seinen eigenen Programmierstil und da würde das auch nichts bringen.
Die deutsche Schriftsprache ist case-sensitive. Außerdem gibt es eine Interpunktionsnorm. Wenn manch einer seine Programme genauso schlampig schreibt, wie sein Posting hier, dann sollte er es lieber bleiben lassen.
Hmm, okay dann will ich hier gleich mal fragen. Vielleicht nutzt der Thread ja dann auch anderen Anfängern was, die das Tutorial durcharbeiten.
#Problem<Chapter 11>
Im 11. Kapitel wird die Aufgabe gestellt: "Change the color of the cannon when a shot is in the air."
Mein bisheriger Versuch die Aufgabe zu lösen bestand darin in die Funktion CannonField::shoot() eine boolsche Variable einzubauen die Auskunft darüber geben soll ob gerade ein Schuss unterwegs ist. Es stand ja im Tut "This function shoots a shot unless a shot is in the air.", also dachte ich es wäre der richtige Ort für meine boolsche Variable. Also habe ich den Code wie folgt erweitert:
Abhängig von 'shotInTheAir' wollte ich dann in CannonField::paintCannon die Brush-Farbe ändern.
Leider führt das nicht zum gewünschten Ergebnis, die Kanone ändert zwar ihre Farbe einmal, aber nur bei Betätigung der Angle oder Force Regler und da auch nicht immer.
Wäre nett wenn jemand einen Hinweis für mich hat, wie ich da weiter komme.
Bye
Ivanhoe
#Problem<Chapter 11>
Im 11. Kapitel wird die Aufgabe gestellt: "Change the color of the cannon when a shot is in the air."
Mein bisheriger Versuch die Aufgabe zu lösen bestand darin in die Funktion CannonField::shoot() eine boolsche Variable einzubauen die Auskunft darüber geben soll ob gerade ein Schuss unterwegs ist. Es stand ja im Tut "This function shoots a shot unless a shot is in the air.", also dachte ich es wäre der richtige Ort für meine boolsche Variable. Also habe ich den Code wie folgt erweitert:
Code: Alles auswählen
void CannonField::shoot()
{
if (autoShootTimer->isActive())
{
shotInTheAir = false;
return;
}
else shotInTheAir = true;
timerCount = 0;
shootAngle = currentAngle;
shootForce = currentForce;
autoShootTimer->start(5);
}
Leider führt das nicht zum gewünschten Ergebnis, die Kanone ändert zwar ihre Farbe einmal, aber nur bei Betätigung der Angle oder Force Regler und da auch nicht immer.
Wäre nett wenn jemand einen Hinweis für mich hat, wie ich da weiter komme.
Bye
Ivanhoe