تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
طلب شرح لا ستخدام background worker لعمل thread و لتجنب Not responding
#1
انا عملت مشروع  و الحمد الله اشتغل بس كان فيه مشكلة  not responding
فانا عاوز اعرف ازاى احلها عن طريق background worker
و ده مثال بسيط عاوز الاقى ليه حل

Imports System.Threading
Public Class Form1
Dim m As Integer = 0
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
10:
TextBox1.Text = m
m = m + 5
BackgroundWorker1.RunWorkerAsync()
GoTo 10

End Sub

Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
Thread.Sleep(1000)
End Sub
End Class
الرد
تم الشكر بواسطة:
#2
سلام

كود :
Imports System.Threading

Public Class Form1

    Dim m As Integer = 0

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        If Not BackgroundWorker1.IsBusy Then BackgroundWorker1.RunWorkerAsync()

    End Sub

    Private Delegate Sub Control()

    Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
        Do
            Dim Invoker As New Control(Sub()
                                           TextBox1.Text = m
                                       End Sub)
            TextBox1.Invoke(Invoker, Nothing)
            m = m + 5
            Thread.Sleep(1000)
        Loop
    End Sub

End Class

موفقين
متغيب
الرد
تم الشكر بواسطة: nowaytorun
#3
(24-07-15, 06:33 PM)الطالب كتب : سلام

كود :
Imports System.Threading

Public Class Form1

   Dim m As Integer = 0

   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       If Not BackgroundWorker1.IsBusy Then BackgroundWorker1.RunWorkerAsync()

   End Sub

   Private Delegate Sub Control()

   Private Sub BackgroundWorker1_DoWork(ByVal sender As Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork
       Do
           Dim Invoker As New Control(Sub()
                                          TextBox1.Text = m
                                      End Sub)
           TextBox1.Invoke(Invoker, Nothing)
           m = m + 5
           Thread.Sleep(1000)
       Loop
   End Sub

End Class

موفقين

الف شكر .................الكود تمام
الرد
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] مساعدة لعمل برنامج حضور وانصراف+وقاعدة بيانات shone1 3 488 10-10-20, 01:14 PM
آخر رد: shone1
  [سؤال] فيما يخص دالة Thread.Sleep(1000) عبد الهادي بهاب 5 455 12-09-20, 06:32 PM
آخر رد: عبد الهادي بهاب
  شباب اريد طريقة عمل اداة لعمل اشارة فى الانساجرام Mina Botros 0 376 24-01-20, 03:59 PM
آخر رد: Mina Botros
Exclamation [VB.NET] كيف أوقف عملية thread دون مشاكل sniperjawadino 2 962 23-07-19, 01:19 PM
آخر رد: sniperjawadino
  اريد حفظ المشروع كتطبيق للموبايل او برنامج سهل لعمل تطبيق لموقعي ahmedhhh2 7 1,653 21-06-19, 07:00 PM
آخر رد: elgokr
  هل يجب اضافة رقم اضافي لرقم الفاتورة لتجنب التكرار Rabeea Qbaha 4 1,516 29-10-18, 06:13 PM
آخر رد: elgokr
  [سؤال] هل ممكن طريقه بسيطه لعمل شات بين الاداره والفروع بقاعده بيانات MYSQL dametucorazon 9 1,742 27-07-18, 12:01 AM
آخر رد: elgokr
  [سؤال] اريد طريقه بسيطه لعمل اضافه لكل محتويات الداتا جريد الى قاعده البيانات MYSQL dametucorazon 6 1,099 23-07-18, 12:24 AM
آخر رد: dametucorazon
  [كود] احتاج فكرة لعمل تقسيم الصنف الى حبة شدة كرتون فراس الغزي 2 899 20-07-18, 02:44 AM
آخر رد: sendbad100
  [سؤال] اريد الطريقه الصحيحه لعمل FilterRow للداتا جريد ثم حفظ البيانات من الداتا جريد لقاعده dametucorazon 6 1,324 30-06-18, 12:45 AM
آخر رد: dametucorazon

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم