منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
مساعده في تشغيل اكثرمن فورم في وقت واحد - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (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=46598)



مساعده في تشغيل اكثرمن فورم في وقت واحد - maherhaddaf - 19-07-23

استعملت الكود التالي لفتح شاشة فورم جديد  
 Dim frm As New Form3
        frm.MdiParent = Me
        frm.Show()
        If frm.WindowState = FormWindowState.Minimized Then frm.WindowState = FormWindowState.Normal

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


كنت استعمل الامر form.show  
وكان يعمل بشكل سليم لكن مشكلته عند ظهور اكثر من شاشة فلن يقوم باستدعاء الشاشة الى الواجهه 


ارجو الافادة


RE: مساعده في تشغيل اكثرمن فورم في وقت واحد - glal - 19-07-23

استعملت الكود التالي لفتح شاشة فورم جديد  
كود :
Dim frm=mdichildren.oftype(of form3).singleordefault
if frm is nothing then
  frm= New Form3
       frm.MdiParent = Me
       frm.Show()
else
       If frm.WindowState = FormWindowState.Minimized Then frm.WindowState = FormWindowState.Normal
end if
frm.activate
الامر activate يقوم باستدعاء الشاشة الى الواجهه


RE: مساعده في تشغيل اكثرمن فورم في وقت واحد - maherhaddaf - 19-07-23

اشكرك من كل قلبي
الكود سليم
بارك الله فيك


RE: مساعده في تشغيل اكثرمن فورم في وقت واحد - قناص المدينة - 19-07-23

ممكن تعرف متغير من نوع   Boolean
 Public isFormOpen As Boolean



Dim frm As New Form3

  If isFormOpen Then

  frm.Activate()


     
   Else
 isFormOpen = True
        frm.MdiParent = Me

        frm.Show()
       

 If frm.WindowState = FormWindowState.Minimized Then frm.WindowState = FormWindowState.Normal

  End If

وعند اقفال الفورم يجب انت تحول القيمه الى false

  
 isFormOpen = False


RE: مساعده في تشغيل اكثرمن فورم في وقت واحد - maherhaddaf - 19-07-23

الكود الاول اشتغل تمام بفضل الله


RE: مساعده في تشغيل اكثرمن فورم في وقت واحد - Taha Okla - 19-07-23

في الفيجول بيزك لا يحتاج كل هذه الاجراءات
فقط الكود التالي ، إن كان مغلق بيشغله وإن مفتوح بفعله، فقط :
كود :
Form2.Show()
Form2.Activate()