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

سؤال

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

في بعض الشروحات والاكواد التي قرأتها في المنتدي هنا وجدت كود لم افهمه ولم اجد له شرحًا

private sub cmd1_click(A as Integer)

انا اعرف انني أعلن عن المتغير بالكلمة الدليلية Dim

Dim A as Integer

ما الفرق بين هذا وذاك؟؟؟

ربما كان السؤال غبي نوعًا

ولكن أتمني أن أفهم إجابته

وشكرا للإفادة :)

مزعج ...

حتي إشعار آخر.

#2

السلام عليكم ..

اخس الكريم el3asher .. الكود الاول يقصد به انه عند حدوث الحدث (و هو الصغط على الزر) ، سوف يتم ارسال باراميتر (متغير عادي من نوع عدد صحيح ..) يمثل قيمة معينة ..

على سبيل المثال : اذا كنت تتابع حدث الضغط بالماوس على الشاشة (الفورم) .. فإنه عند حدوث الحدث (اي النقر بزر الماوس على الفورم) .. سوف يتم ارسال باراميتر يحدد على اي زر تم الضغط ، هل على زر الماوس الإيمن او الايسر ..

بالنسبة للكود الثاني ، فهو يمثل الاعلان عن متغير ، ليتم استخدامه داخل اجراء ما ..

بنت اليمن ،،

لا اله الا الله .. محمد رسول الله

(* ربِ اجعلني مقيم الصلاة و من ذريتي ، ربنا و تقبل دعـاء *)

يا حيّ يا قيـوم ... برحمتك استغيث ... اصلح لي شأني كله و لا تكلني الى نفسي طرفة عين

#3

أشكرك اختي بنت اليمن علي التوضيح

ولكن كيف يمكنني الاستفادة من هذا الكود؟؟

مزعج ...

حتي إشعار آخر.

#4

انا اعرف استخدام الكود الثاني

ولكن كيف استخدم المتغير A الموجود في الكود الاول

كيف استفيد من معرفة الزر الذي ضغته المستخدم

ارجو ان تكون الاجابة بكون وليس بمثال لاني حاليا ليس عندي برنامج الفيجوال بيبك 6

مزعج ...

حتي إشعار آخر.

#5

أخي العاشر ربما لو وضعت المكان الذي وجدت فيه الكود يكون توضيحنا له أفضل ..

ولكن عموماً

أنت تعرف المتغيرات وكيف أننا عند الإعلان عنها نستخدم الكلمة Dim أو Private لجعله خاصاً أو Puplic لجعله عاماً ..

مهمة المتغير الوحيدة حمل قيم بداخله ..

هناك شيء آخر اسمه الإجراءات

وهذه يتم عملها باستخدام الكلمة sub

مثلاً:

Sub Name()
هنا نكتب الكود
End Sub

ووظيفة الإجراء هو تجميع مجموعة من الأكواد في مكان واحد

هذه المجموعة من الأكواد يتم استخدامها في أماكن متفرقة من البرنامج

فبدلاً من كتابة هذه الأكواد في أكثر من مكان يتم تجميعها في إجراء واحد

ويتم طلبها عند الحاجة باستخدام اسم الإجراء

بعض الإجراءات تحتاج إلى تمرير متغيرات إليها

ويظهر ذلك في الإجراءات الحسابية بشكل كبير

فمثلاً من الممكن أن نقوم بإجراء يقوم باستقبال متغيرين يحتويان على رقمين

الأول هو سعر البضاعة قبل الخصم ( مثلاً )

والثاني هو نسبة الخصم

ويقوم الإجراء بعدها بطباعة السعر بعد عمل الخصم

Sub OPER(n1 As Integer, n2 As Integer)
Dim X As Integer
X = n1 * n2 / 100
Print n1 - X
End Sub

الآن قم باستخدام الإجراء السابق من أي مكان كالتالي

OPER 250, 20

وانظر النتيجة

المسألة بسيطة ولكن حاول التركيز أكثر

بنفس الطريقة يتم عمل إجراءات الأحداث مثل النقر وما شابه

ولكن يجب معرفة المفهوم العام للإجراءات أولاً

هناك درس في قسم الدروس بعنوان الإجراءات ستجد فيه الفائدة الكبيرة بإذن الله

وتحياتي للأخت بنت اليمن على جهودها الواضحة

ani.gif
#6

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

انظر مثلا عندما أختار هذا الحدث

Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

أجد باقي تلك المتغيرات تأتي وحدها

فهل معني ذلك اني مجبر علي استخدامها ام من الممكن الا استخدمها؟؟؟؟

مزعج ...

حتي إشعار آخر.

#7

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

لست مجبرا أخى لإستخدامها فى الإجراء ولكن صناع الفيجوال رأوا ان تلك الدوال قد تساعدك فى بعض الأمور داخل الإجراء

{يَا أَيُّهَا النَّاسُ اتَّقُوا رَبَّكُمْ إِنَّ زَلْزَلَةَ السَّاعَةِ شَيْءٌ عَظِيمٌ }الحج1

#8

تماماً كما ذكر الخبير Shearer فهذه المتغيرات يتم تمريرها إلى الإجراء،

وبالنسبة لك فهي تحتوي على معلومات

يمكنك الاستفادة منها إذا أردت

ani.gif
#9

السلام عليكم .... تحية للجميع

فقط عندي ملاحظة على الحدث click لزر الأمر أو اي أداة الذي ورد في السؤال الأصل في هذا الحدث لا يحتاج الي تمرير متغيرات ولكن فقط يحتاج الى تمرير متغيرات عند إنشاء مصفوفة أدوات تحكم مثل التالي

cmd(0) ,cmd(1) ,cmd(2) , ........ فيستخدم متغير لتحديد الأداة التي يتم الضغط عليها مثل هذا المثال

private sub cmd_click(index as integer)
msgbox "this is the buton number ) & index
end sub

طبعا يكون عندك مصفوفة أداوت من زر الأمر حيث يتم نسخ الزر ولصقة واختيار yes من الرسالة التي تظهر

ثم الضغط على اي زر وكتابة الكود السابق فند الضغط على أي زر سيعطيك رقمه

لأننا مررنا المتغير index الي إجراء الخاص بحدث النقر

تحياتي للجميع

اخوكم ناصر

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

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