PDA

View Full Version : مِیشه برنامه رو تا وقتی که یه تایمر کار میکنه نگه داشت؟



combo_ci
دوشنبه 08 بهمن 1386, 18:59 عصر
سلام
من یه تایمر توی رنامه با interval 1000 گذاشتم حالا میخوام وقتی تایمر رو فعال کردم تا وقتی یک ثانیه تموم نشده سراغ کد خط بعدی نره....ولی تا تایمر enable میشه برنامه خط بعد کدد رو اجرا میکنه کدم اینه..
کد:
Timer1.Enabled = True
btn_Front_Click(sender, e)
اینجا وقتی timer فعال شد بلا فاصله
btn_Front_Click(sender, e)
اجرا میشه
کسی میتونه کمکم کنه
ممنون

maryam_vb
سه شنبه 09 بهمن 1386, 10:49 صبح
PrivateSub Timer1_Tick(ByVal sender AsObject, ByVal e As System.EventArgs) Handles Timer1.Tick
btn_Front_Click(sender, e)
EndSub

saeed_rezaei
سه شنبه 09 بهمن 1386, 11:58 صبح
سلام.
عزیز، تایمر خودش یه thread جداگانه هست. یعنی حتی اگه خط بعدی که نوشتی به هر دلیل قفل کنه تایمر کار خود رو جداگانه انجام می ده.

شما باید کارتون را داخل تایمر تعریف کنید. درست مثل کدی که سرکار خانم مریم، نوشتن البته حتما داخل کد ایشون این این کد رو اضافه کنید وگرنه هر یک ثانیه یه بار رویداد کلیک رو اجرا می کنه .



timer1.enable=false


البته یه راه حل دیگه هم وجود داره. اگه اشتباه نکنم کدش اینجوری می شه :



thread.suspend (1000)
btn_front_click (sender,e)


OR
thread.stop (1000)
btn_front_click (sender,e)




اینجوری دیگه نیازی به استفاده از تایمر نیست.

hassan razavi
سه شنبه 09 بهمن 1386, 12:50 عصر
عزیز Theared.sleep استفاده کنید.

saeed_rezaei
سه شنبه 09 بهمن 1386, 17:22 عصر
Thread.Sleep(1000)

کاملا درسته. همین بود البته خود اینم یادتون نره اون اول کار اضافه کنید.



Imports System.Threading

visual_sadegh
شنبه 13 بهمن 1386, 09:25 صبح
دوست عزیر بجای
btn_front_click (sender,e)
می تونی از

btn_front.performclick استفاده کنی.