delphi4arab منتديات دلفي للعرب

نسخة كاملة : سؤال بخصوص التاايمر ؟
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم
اخواني لي سؤال بخصوص التايمر...

وهو ... كيف اخي الأمر ينشئ مرة واحدة فقد ؟
مثلا...

بعد الضغط على كبسة بخمس ثوني يتم عمل لون الفورم احمر...
ولكن المشكلة لو وضعتها في تايمر... فسيتم ارسال هذا الأرم بستمرار كل 5 ثواني... ولكن
انا ****ه فقد مرة واحدة...

ان شاء الله اتضحد الفكرة؟

قم بتعطيل Timer عند اول استعمال

مثلا لوكنت كاتب
كود :
procedure TForm1.Timer1Timer(Sender: TObject); begin Form1.Color := ClRed; end;
اجعله
كود :
procedure TForm1.Timer1Timer(Sender: TObject); begin Form1.Color := ClRed; Timer1.Enabled := False; end;
والسلام عليكم
في الحالة التي ذكرتها : بعد خمس ثواني , لا داعي لأستخدام Timer ..

يمكنك أستخدام المنهج Sleep كمايلي :


PHP كود :
procedure TForm1.Button1Click(Sender: TObject);
begin
Sleep
(5000);
Form1.Color:= Clred;
end; 


- أما عندما تريد أستخدام Timer فعند الضغط على الزر تكتب :

Timer1.Enable:= True;

مع الأنتباه إلى تحديد الخصائص الأولية للتايمر كمايلي :

Enabled =False

Interval = 5000 ( خمس ثواني )

-ثم تضع في حدث Timer1.Timer :: كما أشار الأخ DelaAziz

بالتوفيق أن شاء الله ...
اضافة For الى طريقة Rover .
PHP كود :
var
I:integer;
begin
 
for I:= 0 to 4 do
 
Sleep (1000);
 
Form1.Color:=Clred;
end; 
كل حلقة تستغرق 1 ثانية . عند الانتهاء من 5 حلقات يتم تلوين الفورم . Smile
نعم بارك الله فيكم اخواني... وشكرا لكم...
جربت الحالتين و كلتا الحلتين نجحت معي ولله الحمد...

اخواني شكرا لكم...
واعتقد ان امر ال سليب كان افضل من الذي كنت استخدمه او احاول استخدامه مع التايمر...
ولكن لك اكن اعلم ان هناك ارم سليب....

شكرا لكم مرة اخرى...
والسلام عليكم