السلام عليكم ورحمة الله وبركاته..
اخواني الاعزاء عند كتابة الكود في النموذج يتم كتابته في حدث معين مثلا الحدث Click او الحدث init او valid .....
ما هو الفرق بين هذه الاحداث عند كتابة الكود فيها وما هو عمل اكثر الاحداث استعمالا في كتابة الكود ؟
السلام عليكم ورحمة الله وبركاته..
اخواني الاعزاء عند كتابة الكود في النموذج يتم كتابته في حدث معين مثلا الحدث Click او الحدث init او valid .....
ما هو الفرق بين هذه الاحداث عند كتابة الكود فيها وما هو عمل اكثر الاحداث استعمالا في كتابة الكود ؟

moonlight10 كتب:السلام عليكم ورحمة الله وبركاته..
اخواني الاعزاء عند كتابة الكود في النموذج يتم كتابته في حدث معين مثلا الحدث Click او الحدث init او valid .....
ما هو الفرق بين هذه الاحداث عند كتابة الكود فيها وما هو عمل اكثر الاحداث استعمالا في كتابة الكود ؟
اهلا موون
الحدث هو وقت تنفيذ الكود
فمثلاً عند click يتم تنفيذ الكود المكتوب بالحدث click عند النقر على العنصر كأن يكون زر او صورة ... الخ
وعند valid يتم التنفيذ الكود قبل فقدان المؤشر والكثير من المبرمجين يستخدمونها كــ click
اما init فهو تنفيذ الكود عند خلق العنصر ويشابه كثيرا في الحدث active وهو عند تنشيط النافذة او العنصر
يمكنك معرفة كيف يتم تنفيذ الكود من خلال الكتاب الالكتروني في نافذة المساعدة للفيجوال فوكس برو لانهُ هو المعلم الرئيسي وانا اعتمد عيه كثيرا
تحياتي للجميع
السلام عليكم
هذه مشاركة مهمة وارجوا ان نجعل منها موضوع لتوضيح فائدة كل حدث قدر الامكان مع مثال بسيط
هناك امر مهم يجب معرفته وهو ان كل ايتم (item) له خصائص واحداث خاصة به
يعني الفورم له احداث لا توجد في البوتن (button) والكرد كذلك منفردة ببعض الخواص عن التيكست وهكذا
و كتنشيط للقسم ارجوا ان يقوم كل من لديه تجربة مع حدث بشرح لاهم الاحداث التي يستخدمها
وسأبدا انا بأول حدث
1- وهو الاكتف activate
وهو حدث يحصل عندما ينشط الفورم form عند البدا لمرة واحدة وهو شبيه بالرفرش refresh مع فرق بسيط
مثال عليه
يوضع اكثر حدث فيه هو التاريخ لتفعيل التاريخ كما في الكود التالي
thisform.text1.Value=dateTIME()
ملاحظة تيكست 1 يجب ان تكون موجودة في الفورم لكي يضهر التاريخ باليوم والوقت حسب الكود اعلاه
2- الكلك click يضهر الحدث عند النقر
مثال
do form start
وهو كود للانتقال الى فورم ستارت (تشغيل واجهة ستارت)
3- حدث دبل كلك DblClick يضهر عند النقر مرتين متتاليتين
مثال
APPEND BLANK
كود لاضافة بياض او فراغ لغرض البدا بالكتابة
4- حدث Destroy
يحدث عند الافلات او الاغلاق
مثال عليه يوضع في حدث دستروي الخاص بالفورم الكود التالي
CLEAR events
حيث سيتم اغلاق الفورم نهائيا عند اي اغلاق سواء من زر الخروج او من الاكس الموجوده في اعلى كل فورم
5- حدث Error
يضهر عند حدوث اي خطأ ويجب عمل كود خاص لكل خطا مع العلم ان لكل خطا رقم خاص به معروف للفوكس برو
مثلا الرقم 2006 Cannot locate your Web browser معناها لا يمكن العثور على متصفح ويب لخاص بك
مثال يوضع في حدث ارور الكود التالي(لنفرض هنا اننا نريد العمل على حدث الفورم)
#DEFINE E_UNIQUEINDEX2_LOC "فشل في اضافة قيم جديدة لان الجدول مستخدم."
والبقية اتركها لبقية الاعضاء ارجوا المشاركة ولو بحدث واحد
السلام عليكم ورحمة الله وبركاته
شكرا لك اخي ababil وشكرا للاخ فراس ..
بالفعل فأن هناك الكثير من الاحداث لكل عنصر بعضها يتم استخدامه بكثرة والاخر له استخداماته التي نغفل عنها ..
فمثلا لاحظت انه في حدث interactivechange لمربع النص
فأنه يعطي قيمة تلقائيا في مربع النص حتى عند عدم الضغط بالماوس او اي مفتاح.كما هو الحال عند جمع قيمتين واظهار الناتج في مربع النص الثالث كما في المثال :
thisform.text3.Value=thisform.text1.Value+thisform.text2.Value
شكرا لك مرة اخرى ..
:thumb_up:

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