Hallo und
,
genau so, wie du für die Ballbewegung eine Schleife erstellt hast, kannst du auch darum herum eine weitere Schleife erstellen, welche du mit einer Bedingung verknüpfst (bzw. zum Test einfach
while(true)).
In welcher Ereignisfunktion steht denn der Code bisher?
Denn solange es kein Konsolenprogramm ist, sondern eine Windows-Anwendung (d.h. innerhalb einer
Form), sollte für die Bewegung ein
Timer benutzt werden (anstatt der
while-Schleifen), da sonst die
Form blockiert und Windows dann "die Anwendung reagiert nicht" anzeigt!
Und zu deiner 2. Frage: mittels
TRect.Intersects kannst du abfragen, ob sich zwei Rechtecke (d.h.
BoundsRect von Ball und Bouncepad) überschneiden.
PS: Außerdem solltest du einfach zwei Variablen
BallSpeedX und
BallSpeedY haben, so daß du nur jeweils eine einzige Zeile (für Veränderung von
Ball.Left und
Ball.Top) benötigst.