تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] مشكلة بسيطة في برنامج بسيط يعتمد على( Multi-Threading)
#1
ألسلام عليكم ورحمة الله وبركاته ..

أخواني كيف حالكم ..

قررت اتعلم اسلوب Multi Threading ولكن في الحقيقة الامر اصعب من تعلم VB.net بحيث لايوجد لها مواد تعليمية واشرح مفصل لها ولا حلول لمشاكلها .

المهم برنامج برنامج تعليمي لاكتسب مهارات في هذا الاسلوب .

اولا برنامج يحتوي على Form1 و Module1

الــ Form1 يحتوي على التالي :  TextBox1.Text و Button1
والـModule1 يحتوي على Sub  بإسم Main
وبعد شرح أجزاء البرنامج  هذه الاكواد كاملة


Form1

كود :
  Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
       Dim Thread As New Threading.Thread(Sub() main())
       Thread.IsBackground = True
       Thread.Start()

   End Sub

و تانياً ألـ Module1

كود :
Module Dada
   Sub main()
       
       Dim Text As String = "Hello Word"
       Dim myDelegate As MethodInvoker
       myDelegate = New MethodInvoker(Sub() Form1.TextBox1.Text = Text)
       Form1.TextBox1.Invoke(myDelegate)


   End Sub
End Module


مشكلتي وهى كيف تغير النص الموجود داخل Textbox1 الى موجود في Form1 عن طريق Threading وطبعا اريد الكود الذي يقوم بتغير النص
او التحكم في Form1 موجود داخل Module1 وليس على نفس الـForm1 (علـــــماً بأن الكـــــود الســــــابق بــه خطـــا )
وهذه صورة الخطا الذي يظهر لي :



وجزاكم الله الف خيراً تتمنوه وتلقوه بإذنه تعالى .
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
مشكلة بسيطة في برنامج بسيط يعتمد على( Multi-Threading) - بواسطة أبو نقطة - 12-05-17, 03:19 AM


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


يقوم بقرائة الموضوع: