الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكله في استدعاء فورم

بدأه mrm-mlm في 25 فبراير 2011 · 4 رد · 1,450 مشاهدة · في Microsoft Visual C#.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمه الله وبركاته

اخواني الاعزاء عندي مشكله في استدعاء الفورم والمشكله هي

عند تصميمي فورمين معينين واريد ان استدعي الفورم الثاني من خلال زر موجود في الفورم الاول ولكنني لا استطيع استدعاء هذا الفورم حيث اني حسب ما اعلم ان هنالك

ثلاثه طرق لاستدعاء الفورم في لغه السي شارب وهي كلاتي

form1.show() 
form1.showdialog()
application.run(new form1())

ولكن هذا الميثودز لم تنجح معي في استدعاء فورم صممته بالستخدام واجه فيجول ستوديو

كيف يمكنني من تصميم عده فورمات واستدعاء هذا الفورمات من فورم رئيسي

وشكرا

#2
form1.show()

هذا إذاأردت ان يفتح لك الفورم مع غحتفاظ النقر على الفورم الذي تحته أي الفورم الأول

اقتباس
form1.showdialog()

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

اقتباس
application.run(new form1())

هذا للتحكم في الفورم الذي سيذهر الاول يعني الواجهة

يبدوا أن تستدعين نفس الفورم لهذا لا يذهر لك أي شيء لان form1 هو الفورم الإفتراضي الاول الذي تبنين عليه كل شيء المفروض عندما يكون لك فورم ثاني ان ييكون إسمه مختلف يعني مثلا form2 وبهذا تستدعي بهذا

اقتباس
form2.showdialog()

بالتأكيد يكون الحدث تحت زر او قائمة

بالتوفيق

#3

شكرا على الرد وشكرا لجهودك

وعذرا لكوني غير واضح بطرح المشكله

انا صممت فورمين الفورم الاول اسمه form1 والفورم الثاني هو form2 ومن خلال تصميمي وضعت في الفورم الاول button عند الضغط على هذا ال button المفروض ان يفتح ال form2 ولكن عند استخدام methods التي استخدمتها سابقا لم يتم استدعاء ال from2 وانا اعلم ما هو الفرق بين ال methods الثلاثه ولكن سؤالي هو لماذا لا يتم استدعاء هذا الفورم الثاني

وايضا اعرف انه كل فورم يجب ان يكون له اسم معين مثلا عند استخدام الكود التالي لا اواجه اي مشكله ولكن المشكله انه يجب ان اعمل ديزاين للفورم باستخدام الكود وليس باستخدام واجهه الفيجول ستوديو

form form2 = new form();
form2.showdialog();

شكرا لك اخي شهداء ليبيا مع تحياتي

اخوك مصطفى

#4

السلام عليكم و رحمة الله و بركاته

أخي العزيز

اذا كانت تلك الكود الذي كتبته هو الطريقة التي تستدعي بها الفورم الثاني فربما هذا يفسر لي فشل تلك الطرق في استدعائها

فلنفترض انك واقف في Form1 و تريد استدعاء الشاشة الثانية و التي اعطيت للخاصية Name اسم Form2

و تريد استدعائها فيكون الكود


frm.Show();
Form2 frm = new Form2();

فان الClass باسم اسم الForm الذي تنشيئه و لكي تستدعيه بكل خوائصه و محتوياته لابد من عمل Object من هذا الClass

و ليس من الClass العام للForm

فهند عمل object منه يكون فارغا بلا خصائص و لا أدوات

ارجو ان اكون افدتك اخي

تقبل خالص تحياتي

1
#5

شكرا جزيلا اخي العزيز wasimsalah

كلامك صحيح يجب انشاء اوبجيكت من الفوم الثاني

حلت المشكله واستخدمت الكود والحمد الله عمل مضبوط معي

شكرا جزيلا مع تحياتي

مواضيع مشابهة