منتدى فيجوال بيسك لكل العرب
[سؤال] السلام عليكم ورحمة الله وبركاته . محتاج كود عدم فتح اكثر من فورم داخل الفورم الرئيسي - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [سؤال] السلام عليكم ورحمة الله وبركاته . محتاج كود عدم فتح اكثر من فورم داخل الفورم الرئيسي (/showthread.php?tid=27969)



السلام عليكم ورحمة الله وبركاته . محتاج كود عدم فتح اكثر من فورم داخل الفورم الرئيسي - abu.hanen4u - 20-12-18

مرحبا بكم إخواني الكرام 
ارجوا الإفادة في مشكلتي هذه 
عندي فورم رئيسي mdi وبه ازرار كثيرة لأكثر من فورم 
المشكله عند الضغط المتكرر علي الزر يتم فتح نفس الفورم أكثر من مرة أيضاً 
اريد كود يمنع عدم تكرار فتح الفورم ان كان مفتوح مسبقاً , وعند الضغط علي زر لفتح اي فورم اخر يتم اغلاق الفورم السابق
اللغة المستخدمة  vb.net
فهل هناك حل لهذه المشكلة
شكراً جزيلاً وجعله الله في ميزان حسناتكم Smile



RE: السلام عليكم ورحمة الله وبركاته . محتاج كود عدم فتح اكثر من فورم داخل الفورم الرئيسي - elgokr - 20-12-18

اهلاً بك 

بخصوص كود التحقق التحقق من فتح الفورم

واذا كان مغلق يقوم بفتح الفورم
كود :
       If Application.OpenForms().OfType(Of Form2).Any Then
           MessageBox.Show("Form2 Is Open.")
       Else
           Form2.Show()
       End If

تذكر بن الكود التالى فقط يقوم بفتح الفورم بدون تكرار
كود :
       Form2.Show()

ولاستخدام السطر بهذا الشكل
كود :
       Form2.ShowDialog()

يجعل الفورم الرئيسي متجمد اى اى زر غير مفعل حتى يتم اغلاق الفورم المستخدم

تحياتى لك
وتمنياتى لك التوفيق



RE: السلام عليكم ورحمة الله وبركاته . محتاج كود عدم فتح اكثر من فورم داخل الفورم الرئيسي - abu.hanen4u - 20-12-18

بارك الله فيك اخي الكريم علي المساعدة
الكود الاول فكرته جميلة 
اما الكود الثاني فهو الذي استخدمته وهو الذي يقوم بتكرار فتح الفورم
والثالث لا استطيع استخدامة من الفورم الرئيسي
شكرا جزيلا لك 
اعتقد اني سأحاول استخدام الكود الاول
لك مني خالص التحيات  Shy


RE: السلام عليكم ورحمة الله وبركاته . محتاج كود عدم فتح اكثر من فورم داخل الفورم الرئيسي - elgokr - 20-12-18

يبدو انك تتعامل مع كود فتح الفروم كما لو تستخدم كود c#
لا تقوم بتعريف الفوم لمسمى مثل
كود :
Dim F2 As New Form2
F2.Show()

لان بهذه الطريقة انت تجبر الفرم على الفتح اكثر من مرة كلما تم الضغط على الزر
اجعل الكود مباشراً كما تم توضيحه بالرد السابق

تحياتى لك
وتمنياتى لك التوفيق