ich bin c# Anfänger und habe ein Problem.Ich will ein image in der picturebox Auto fahren lassen und wenn es am Ende der Form angekommen ist wieder am Anfang auftauchen lassen, jedoch fährt es nur und erscheint dann nicht wieder am Anfang ?Hier der Text:
private void timer1\_Tick(object sender, EventArgs e)
{
for (int i = 1; i
}
Vielen Dank lema97
Hallo Lema97,ohne jetzt den Sourcode auszuprobieren würde ich sagen, das es bei der Abfrage
for (int i = 1; i = Width){
Auto.Left = 0;
}
"" grundsätzlich würde ich immer geschweifte Klammern verwenden
"" ist nicht nötig wenn nur eine Anweisung folgt
Auto.Left = Auto.Left + 5;
}
Viel Spaß beim programmieren.
Hallo!
Neben den Anmerkungen bzgl. >= vs. == (das nennt sich übrigens „defensives Programmieren“) bin ich mir nicht sicher, ob der Ansatz so überhaupt klappt.
Du lässt in der Schleife bei einem Timer-Ereignis die Position von „Auto“ immer von 0 bis Width laufen.
Je nachdem, was Auto genau ist, wird es aber vermutlich nicht bei jeder Änderung der Position neu gezeichnet.
Du solltest also im Timer jeweils nur einmal die Position verändern.
Falls Auto.Left als Property definiert ist (wie es der Name nahe legt), deren Setter schon ein Repaint-Event auslöst, solltest Du eine lokale Variable verwenden,