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

استفسار عن كائنات في visual Basic

مغلق
بدأه فاطمة7 في 25 أغسطس 2005 · 9 رد · 752 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

يوجد في برنامج Access نموذج رئيسي و نموذج فرعي

سؤالي هو :

ماذا يقابلهما في Visual Basic ؟

و لكم الشكر

#2

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

يمكن جعل اى فورم هو الفورم الرئيسى واى فورم اخر فورم فرعى او يمكن استخدام فورم من نوع MDI لتكون هى الفورم الرئيسى وتغيير الخاصية MDIChild للفورم الفرعى الى True وعند استخدام الفورم العادى كفورم رئيسى يجب جعله حاضن للفورمات الفرعية عن طريق الدالة SetParent

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#3

شكرا لك أخي الكريم على هذه المعلومات

لكن الفورم MDI لا يوضع عليه أدوات تحكم سوى بعض الأدوات كأداة Picture Box و أداة data

و أنا أريد وضع أدوات تحكم على الفورم الرئيسي كأداة command و أداة text ...إلخ لذا أرجو منك أخي الكريم أن تشرح لي بالتفصيل الممل كيفية جعل الفورم العادي حاضن للفورمات الفرعية و كيفية استخدام الدالة Setparent لأني أول مرة أسمع بها .

#4

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

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

بالنسبة للدالة SetParent فتستخدم كالتالى

لنفرض ان لدينا نموذجين Form1 , Form2 ونريد ان نجعل Form1 حاضن لـ Form2 سيكون الكود كالتالى

Private Sub Form_Load()
SetParent Form2.Hwnd, Form1.Hwnd
End Sub

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#5

جزاك الله خيرا

لقد جربت وضع أدوات تحكم ضمن PictureBox الموجودة على MDIForm و لكن عند تشغيل البرنامج يكون الفورم الفرعي خلف الفورم الرئيسي هذا إذا كان بدء التحميل من الفورم الفرعي أما إذا كان بدء التحميل من الفورم الرئيسي فلا يظهر إلا الفورم الرئيسي و لم أعرف كيف أجعل جميع الفورمات ظاهرة أمامي

و بالنسبة للطريقة الثانية أيضا جربتها و لكن عند تشغيل البرنامج تظهر رسالة

sup or function not devined و يشير إلى الخطأ على الدالة SetParent

لو سمحت أرشدني للحل و سامحني فقد أثقلت عليك

#6

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

بالنسبة للدالة SetParent فلازم تعرفيها فى البداية ولاحظى ان فيه رابط تحت اسم الدالة اضغطى عليه علشان تعرفى طريقة الاعلان عن الدالة

بالنسبة لاداة PictureBox فهى من خصائصها انها تكون OnTop لكن ممكن تفادى المشكلة بالدالة SetParent وجعل الادة PictureBox هى الحاضنة للفورم الفرعى وبالطريقة دى الفورم هايظهر من غير مشاكل :rolleyes:

إن قلت قال الله قال رسولـه همزوك همز المنكر المتعالي
أو قلت قد قال الصحابة والألـى تبعاً لهم بالقول والأعمال
أو قلت قـال الشافعي وأحمد و أبو حنيفة والإمام الغالي
صدوا عن وحي الإله ودينـه واحتالوا على حرام الله بالإحلال
يا أمةً لعبت بدين نبيها كتلاعب الصبيان في الأوحال
حاشا رسول الله يحكم بالهوى تلك إذاً حكومة الضلال

feed.1.gif

#7

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

كل الشكر لك أخي الكريم

بقي لدي سؤال أخير :

إذا كان هناك عدة فورمات فرعية و كلها عليها أدوات تحكم و كلها مفتوحة نعمل بها . هل يؤثر ذلك على أداء البرنامج ؟ كأن يضعف الأداء مثلا بسبب استهلاك مساحة كبيرة من الذاكرة

#8

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

أختي الفاضلة,

بالنسبة لسؤالك الأخير, فالجواب هو : لطالما أنك لم تتعدي المساحة المحددة للذاكرة فأنك بأمان و لكن ستلاحظين بطىء في تنفيذ العمليات أو الأيعازات.

إن شاء الله يكون جوابي مفيد لكِ.

و جازاك الله خيراً...( أطلب العلم من المهد إلى اللحد )

أخوك المهندس ميثم كمال

#9

الشكر الجزيل لك أخي الكريم

و جزاك الله خيرا

#10

أختي العزيزة بالنسبة للسؤل حول البطئ :

يجب اولا عند بناء اي نظام حاسوبي ان نراعي الجوانب التي تتعلق باستهلاك الذاكرة وحقيقة عجبني سؤلك المتعلق بالسرعة هذا يدل على انك في بداية البرمجة الصحية ان اهتميتي بهذه الأسئلة

هناك ملاحضات عديدة تتعلق بقضية سرعة الكود يكثر فيها النقاش وإن شاء الله سوف اضع موضوع عن هذا الجانب قريب , لكن كما قال الأخ Maythem Kamal لا وجود للخوف في حال كان استخدام البرنامج للذاكرة يوزاي الحد المسموح به لكن هذا الحد المسوح به كيف يمكن معرفته .

دائما حاولي بناء البرنامج باستخدام هياكل البيانات اي باستخدام الإجراءت والداول , لا تحاولي الإكثار من الأوامر التكرارية (For While ) في البرنامج . كوني حريصة جدا على تعريف المتغيرات .

ميزي متي تستخدمي تعريف متغير عام ومتغير خاص . حاولي التخلص من المتغيرات التي انتهت من الإستخدام . تخلصي من المتغيرات من نوع Object بعد استخدامها , حاولي استخدام الموديول والكلاس وغيرها من الأدوات التي يتيحها فيجول بيسك . لا تتركي مجال ابدا لتكرار الكود في برنامج فإذا كان هناك شفرة يمكن استدعائها اكثر من مرة يمكنك إخراجها في دالة , وهكذا .

الترتيب السليلم لطريقة كتابة الكود وذلك بوضع التداخل فيه كي يسهل عليكي التعديل في ما بعد بسهولة

عند اغلاق النافذة Form ضعي بعدها Set FormName = Nothing

وبالتوفيق .

هذا الموضوع مغلق.

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