13-11-2011, 12:26 PM (آخر تعديل لهذه المشاركة: 13-11-2011, 05:15 PM بواسطة hanipino.)
السلام عليكم و رحمة الله
عندى كود بسيط يجعل شكل معين يتحرك داخل الفورم بلا توقف ,
نفذت الكود بشكل عادى فتم بلا مشاكل و لكن عند محاولة عمله كاجراء منفصل ليستخدم مع اى شكل
اخر و بسرعة مختلفة , ظهرت المشكلة .
مرفق سورس كود للحالتين
قطرة الماء تثقب الحجر ...لا بالعنف و لكن بتكرار المحاولة
procedure TAnimatedShape.Animate; begin If Left > Parent.ClientWidth - Width - 5 Then Begin Left := Parent.ClientWidth - Width - 5 ; FSpeedX := - FSpeedX; Brush.Color := ClRed; End Else If Left < 0 Then Begin Left := 0; FSpeedX := - FSpeedX; Brush.Color := ClGreen; End; If Top > Parent.Clientheight - height - 5 Then Begin Top := Parent.ClientHeight - height - 5 ; FSpeedY := - FSpeedY; Brush.Color := ClBlue; End Else If Top < 0 Then Begin Top := 0; FSpeedY := - FSpeedY; Brush.Color := ClSilver; End; Left := Left + FSpeedX; Top := Top + FSpeedY; end;