Thema: Delphi Bewegung

Einzelnen Beitrag anzeigen

Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#6

Re: Bewegung

  Alt 1. Apr 2006, 20:29
Also am sinnvollsten wäre für einen Anfänger sicherlich der Timer! Der führt dir nämlich jede Sekunde - oder die von dir voreingestellte Zeit - einen Code aus, d.h. du brauchst dir nicht selbst eine Schleife zu basteln! Das ganze kann dann so aussehen:
Delphi-Quellcode:
procedure TForm1.Timer1(Sender: TObject);
var
  f : Integer;
begin
  f := 1; // Pixel um wie viel das Image verschoben wird
  if ((Image1.Left + f) < Form1.ClientWidth) then // Abfrage ob Image1 nach der Verschiebung
    Image1.Left:= Image1Left + f; // noch auf der Form sichtbar ist,
                                                  // wenn ja, dann wird das Image verschoben

  if ((Image1.Top + f) < Form1.ClientHeight) then // Abfrage ob Image1 nach der Verschiebung
    Image1.Top := Image1.Top + f; // noch auf der Form sichtbar ist,
                                                  // wenn ja, dann wird das Image verschoben
end;
Wenn du das ganze ohne Timer machst und die Schleife wie oben erwähnt heranziehst, dann siehst du den Verschiebungseffekt nicht wirklich, denn die heutigen PCs sind so schnell im Berechnung, dass du die Verschiebung gar nicht mitbekommst! Dort wäre dann ein Application.ProcessMessages angebracht, um eine gewisse Verzögerung zu erzeugen...

mfg shark
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat