السّلام عليكم و رحمة الله و بركاته
سادتي الأفاضل
لديّ MDIParent و به زر أمر لفتح فورم Form1 كمثال
لمّا أقوم بالضغط على زر الأمر لإظهار الفورم 1 .. يتوقف الشريط المتحرك لغاية ظهور الفورم 1
حاولت أعمل بهذه الطريقة لكن بدون فائدة
هل توجد طريقة أخرى للتجربة بارك الله فيكم
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'Dim Th As New Threading.Thread(Sub() MyForm1Thread())
'Th.Start()
Dim Th As New Threading.Thread(AddressOf MyForm1Thread)
Th.Start()
'Try
'Form1.ShowDialog()
'Catch ex As Exception
'XtraMessageBox.Show(ex.Message)
'End Try
End Sub
Sub MyForm1Thread()
Try
Form1.ShowDialog()
Catch ex As Exception
XtraMessageBox.Show(ex.Message)
End Try
End Sub
السّلام عليكم و رحمة الله و بركاته
بارك الله فيك و لك و جزاك خير الجزاء أخي الكريم kiki
سأحاول العمل بما هو برابط اليوتوب و إن شاء الله يحصل خير
تحياتي و احتراماتي
السّلام عليكم و رحمة الله و بركاته
أحيانا الواحد منّا يقوم من نومه من فراشه جريا إلى هذا المنتدى عسى أن يجيب أو يسأل أو يشارك بحل أو حتى بربع فكرة
و موضوعي ..
أيّام عديدة و مشروعي معطّل .. لا حتّى من سأل عليه
حسبي الله و نعم الوكيل
السلام عليكم ورحمة الله و بركاته
الاخ عبد العزيز البسكري.
ما الذي تريد عمله بالضبط انا لم افهم الغاية من الطلب
لو فصلت اكثر في الغاية المطلوبة ربما وجدنا الحل.
السّلام عليكم و رحمة الله و بركاته
أستاذنا الكريم .. أبو ليلى
كل الشكر و المحبة و الإحترام
القصّة .. و ما فيها ..
لدي MDIParent1 و بها أداة WebBrowser1 تعرض نص متحرّك
إلى هنا .. كله تمام و الحمد لله
المشكلة .. لما أضغط عن زر الامر بال MDIParent1 لإظهار الفورم 1 .. يتوقّف النص المتحرك لغاية ظهور الفورم 1 فيعيد نشاطه
قد تلاحظ بهذا المثال توقّف النص المتحرك توقف طفيف لكن لما تكون بيانات الفورم 1 كثيرة و مع أدوات الديف إكسبرس .. التوقف يصبح بشكل فضيع
ما أريده .. أضغط على زر الامر لإظهار الفورم 1 بدون توقف النص المتحرك بال MDIParent1
جربت جميع طرق
Multi Thread
كن ما ضبطت أو ربما لم أعرف إستخدامها
تحياتي و احتراماتي
عليكم السلام ورحمة الله وبركاته ..
واقعا هذا شيئ طبيعي ان يتوقف الانميشن داخل اداة الويب براوزر لان الثريد الاساسي (UI Thread) مشغول بفتح الfom الجديدة ،
حل هذه المشكلة نظريا هو انك تفتح الform الجديدة بواسطة ثريد اخر (ولو انه لايفضل ذلك) ولكن هذا الحل الوحيد ربما لتجاوز هذه العقبة:
كود :
Dim _thread As Thread = New Thread(Function()
Application.Run(New Form() With {.MdiParent = Form1})
End Function)
_thread.SetApartmentState(ApartmentState.STA)
_thread.Start()
لم اجرب الكود ، ولكن نظريا المفروض يضبط.
موفقين
--
هناك حل اسهل ربما ، وانه انك تنشأ الويب براوزر (الي فيها النص المتحرك) بالكود وتضيفها للفورم ، حيث تقوم بانشائها باستخادم sta thread منفصل
شاهد هذا الرابط :
https://stackoverflow.com/questions/4269...new-thread
وللتحويل من السي شارب للفيجوال بيسك، استخدم هذا الموقع
https://converter.telerik.com/
السّلام عليكم و رحمة الله و بركاته
و الله أستاذنا الكريم الشاكي للّه
حصل معي كومة أخطاء .. لم أعرف من أين أصلحها
لو تكرمت بالنظر للصورة المرفقة
بارك الله فيك و لك و جزاك خير الجزاء
إحتراماتي
اعتقد لو نقلت الاكواد الي داخل function الى فنكشن منفصلة ممكن يضبط
يعني جدي :
كود :
Private Sub OpenForm2()
Application.Run(New Form() With {.MdiParent = Form1})
End Sub
وعند تكوين الثريد يصبح هكذا:
كود :
Dim _thread As Thread = New Thread(AddressOf OpenForm2)
تقصد بهذا الشكل أستاذنا القدير ..
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'Dim _thread As Thread = New Thread(Function()
' Application.Run(New Form() With {.MdiParent = Form1})
' End Function)
'_thread.SetApartmentState(ApartmentState.STA)
'_thread.Start()
Dim _thread As Thread = New Thread(AddressOf OpenForm1)
End Sub
Private Sub OpenForm1()
Application.Run(New Form() With {.MdiParent = Form1})
End Sub