Das ist ja auch kein Wunder, denn schließlich ist das ziemlich optimistisch programmiert.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| procedure TForm2.Timer4Timer(Sender: TObject); begin if (Image4.Left <= 0) or (Image4.Top <= 0) then Bewegung := 1 else if (Image4.Left >= Form1.Width) or (Image4.Top >= Form1.Height) then Bewegung := -1;
Image4.Left := Image4.Left + Bewegung; Image4.Top := Image4.Top + Bewegung; end; |
Ist
Bewegung positiv, wandert das Bild nach unten links, sonst nach oben rechts. Stößt es oben links an, wird
Bewegung positiv, damit es wieder runter geht, und umgekehrt.
Was ihr programmiert habt, kann zu einer Art "Zittern" führen, weil die Richtig ständig umgedreht wird, wenn sich das Bild außerhalb des zulässigen Bereiches befindet, aber mit der "Sprungweite", nämlich
Bewegung, nicht mehr in einem "Satz" (Timer-Event) zurückfindet. Meine Lösung dagegen schiebt das Bild strikt in die richtige Richtung.