PDA

View Full Version : مشکل کوچیک با تایمر



rezapassword
چهارشنبه 09 شهریور 1390, 19:42 عصر
سلام و درود به همه دوستانم
دوستان من میخوام که در یک تایمر یک شرط رو به صورت دائم بررسی کنم
و در کنار این اگر شرط درست بود یک عمل رو انجام بدم
ولی این عمل فقط برای یک بار انجام بشه
نمیشه تایمر رو از کار انداخت چون اون شرط باید بررسی بشه
حالا چی کار کنم که این عمل یک بار انجام بشه :
اینم کدی که باهاش مشکل دارم
سعی کردم با یه شرط دیگه با استفاده از ستینگ وی بی حلش کنم اما نشد
شما ایده ایی دارید ؟
If My.Computer.Network.IsAvailable = True Then
If My.Settings.up = ("no") Then
up.Enabled = True
End If

timer.Enabled = True

End If
If My.Computer.Network.IsAvailable = False Then

If My.Settings.down = ("no") Then
down.Enabled = True
End If
timer.Enabled = False
End If

h_a_m_i_d
پنج شنبه 10 شهریور 1390, 08:38 صبح
خوب عزیزم هروقت خواستی که timer متوقف بشه
timer1.enabled=false
مینویسی مثلا میخوای برای یک بار msgbox کنه hello
("msgbox("hello
timer1.enabled=false
بازم اگر مشکلی داشتی در خدمتیم

rezapassword
پنج شنبه 10 شهریور 1390, 09:53 صبح
اینو میدونم ولی بالا نوشتم که نمیخوام تایمر رو خاموش کنم
اون بالا شبکه رو در هر لحظه چک کنه

MohsenPS
پنج شنبه 10 شهریور 1390, 10:26 صبح
سلام؛
اگه از تایمرت فقط برای تست وصل بودن به شبکه میخوای استفاده کنی, روش بهتری وجود داره. کافیه یه شیء از نوع Network تعریف کنی:

Private WithEvents Net As New Microsoft.VisualBasic.Devices.Network

این شیئ یه رویداد داره که به محض تغییر در وضعیت اتصال به شبکه Raise میشه.

rezapassword
پنج شنبه 10 شهریور 1390, 14:09 عصر
سلام منظورتون Net.IsAvailable.ToString() است ؟ خوب باید این رو باز با یه تایمر بررسی کرد دیگه ؟ راه دیگه ایی هم داره ؟

MohsenPS
پنج شنبه 10 شهریور 1390, 20:40 عصر
سلام منظورتون Net.IsAvailable.ToString() است ؟ خوب باید این رو باز با یه تایمر بررسی کرد دیگه ؟ راه دیگه ایی هم داره ؟

مثال زیر رو ببینید

rezapassword
جمعه 11 شهریور 1390, 13:02 عصر
ممنون محسن جان
متوجه شدم
بدرود

omid-vbAuto
جمعه 11 شهریور 1390, 17:17 عصر
مثال زیر رو ببینید


سلام من با توجه به کدهای زیر می خوام:

Private WithEvents OMID_SKY_Net As New Microsoft.VisualBasic.Devices.Network

Private Sub OMID(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.Devices.NetworkAvailableEven tArgs) Handles OMID_SKY_Net.NetworkAvailabilityChanged

If e.IsNetworkAvailable = True Then
MsgBox("Connect")
Else
MsgBox("DisConnect")
End If


End Sub


حالا می خوام ساب OMID رو تو یه دکمه فراخانیش کنم تا بگه که وصل یا نه اونو چکارش کنم؟(البته با این روش کد می خوام)

MohsenPS
شنبه 12 شهریور 1390, 00:45 صبح
سلام من با توجه به کدهای زیر می خوام:

Private WithEvents OMID_SKY_Net As New Microsoft.VisualBasic.Devices.Network

Private Sub OMID(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.Devices.NetworkAvailableEven tArgs) Handles OMID_SKY_Net.NetworkAvailabilityChanged

If e.IsNetworkAvailable = True Then
MsgBox("Connect")
Else
MsgBox("DisConnect")
End If


End Sub


حالا می خوام ساب OMID رو تو یه دکمه فراخانیش کنم تا بگه که وصل یا نه اونو چکارش کنم؟(البته با این روش کد می خوام)


مثال زیر رو ببینید:

Samsam2010
شنبه 12 شهریور 1390, 12:21 عصر
دوستان این روش خوبی برای چک کردن نت نیست ! من از DSL استفاده میکنم اما با اینکه از اینترنت دی سی شدم ! میگفت کانکت ! کلا network رو چک میکنه ! اینترنت رو که چک نمیکنه ! روش بهتر هست؟ ؟