PDA

View Full Version : سوال: Thread بجای Timer



m_test
پنج شنبه 19 بهمن 1391, 13:06 عصر
با سلام
اساتید محترم تیکه کد برای این عنوان اگه خدمتتون هست، لطف بفرمایید، ممنونتون میشم
توضیح اینکه میخوام بجای تایمر از Thread استفاده کنم. این کار رو بخاطر این میخوام انجام بدم که رویداد Tick تایمر وقتی داره کار میکنه هی وقفه ایجاد میشه البته بسته به Interval اما من میخوام این وقفه ها نباشه ضمن اینکه کار تایمر انجام بشه
حالا اگه هر راه دیگه ای هم سراغ دارید ممنون میشم راهنماییم کنید

فرید نجفلو
پنج شنبه 19 بهمن 1391, 13:58 عصر
سلام


Public Class Form1
Private WithEvents tmr As New System.Timers.Timer With {.Interval = 10}

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
tmr.Start()
End Sub

Private Sub tmr_Elapsed(sender As Object, e As System.Timers.ElapsedEventArgs) Handles tmr.Elapsed
'محل اجرای کد شما
End Sub

End Class

m_test
پنج شنبه 19 بهمن 1391, 14:32 عصر
سلام


Public Class Form1
Private WithEvents tmr As New System.Timers.Timer With {.Interval = 10}

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
tmr.Start()
End Sub

Private Sub tmr_Elapsed(sender As Object, e As System.Timers.ElapsedEventArgs) Handles tmr.Elapsed
'محل اجرای کد شما
End Sub

End Class

از راهنماییت خیلی ممنون
من ی پنل دارم تو فرمم که با تایمر حرکتش میدم تو عرض فرمم مشکلی که هست پرش تصویر، کد با خطا مواجه میشه و میگه که توسط ی نخ دیگه ایجاد شده
اگه لطف کنید راهنماییم کنید
حتی اگه سورس دیگه ای هم سراغ دارید ی ممنون میشم برام بزارید

فرید نجفلو
پنج شنبه 19 بهمن 1391, 15:03 عصر
با اینکه از نظر اصول درست نیست ولی می تونید از روش پایین استفاده کنی

Public Class Form1
Private WithEvents tmr As New System.Timers.Timer With {.Interval = 10}

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
CheckForIllegalCrossThreadCalls = False '***
tmr.Start()
End Sub

Private Sub tmr_Elapsed(sender As Object, e As System.Timers.ElapsedEventArgs) Handles tmr.Elapsed
Panel1.Left += 1
If Panel1.Left > Me.ClientSize.Width Then
Panel1.Left = -Panel1.Width
End If
End Sub
End Class