• 0
  • مالي خلق
  • أتهاوش
  • متضايق
  • مريض
  • مستانس
  • مستغرب
  • مشتط
  • أسولف
  • مغرم
  • معصب
  • منحرج
  • آكل
  • ابكي
  • ارقص
  • اصلي
  • استهبل
  • اضحك
  • اضحك  2
  • تعجبني
  • بضبطلك
  • رايق
  • زعلان
  • عبقري
  • نايم
  • طبيعي
  • كشخة
  • النتائج 1 إلى 10 من 10

    الموضوع: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

    1. #1
      التسجيل
      23-08-2007
      الدولة
      مهد فيض العرب (اليمن)
      المشاركات
      84
      المواضيع
      8
      شكر / اعجاب مشاركة

      هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      السلام عليكم

      وكما يعلم البعض أنه عند إستخدام (MsgBox) في لغة (VB6) لإظهار أي رسالة
      فإن البرنامج يتوقف نهائياً عن تنفيذ أي عملية حتى لو كانت داخل (Timer)، وبالتالي
      لن يواصل البرنامج تنفيذ أي عملية أخرى حتى يقوم المستخدم بالرد على هذه الرسالة
      -مثلاً يقوم بالضغط على زر (OK)- لذا كان لا بد من إيجاد حل مناسب لهذه المشكلة والتي واجهتني أنا تحديداً،وبالفعل وجدت الحل، أو بالأصح وجدت الحلّين في إحدى المواقع الأجنبية كالتالي: -

      1) أن أقوم بتشغيل برنامج كلما دعت الحاجة لإستخدام (MsgBox).
      وبالتأكيد لا أنا ولا غيري سيقوم بإستخدام هذا الحل حتى لو كان آخر عمل في حياتنا . . .

      2) أن أقوم بإستخدام إحدى دوال الـ (API) والتي تدعى (MessageBox) والبرنامج المرفق يوضح ذلك بالتفصيل . . .

      للتحميل: -

      من المرفقات أو على الرابط التالي: -

      - http://www.arbup.org/v/4824490/API_MsgBox.rar.html

      ملاحظة هامة جداً: هذه الطريقة منقولة من إحدى المواقع الأجنبية مع بعض الإضافات الشخصية.

      وتقبلوا تحياتي (NoooH)
      الملفات المرفقة الملفات المرفقة

    2. #2
      التسجيل
      12-07-2004
      المشاركات
      247
      المواضيع
      25
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

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

      شكرا على الشرح
      دمت بود وعافية
      خط سير العمر
      الكويت - الرياض - الكويت

    3. #3
      التسجيل
      23-08-2007
      الدولة
      مهد فيض العرب (اليمن)
      المشاركات
      84
      المواضيع
      8
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      السلام عليكم

      شكراً على هذه الإضافة الطيبة والتي أرحب بها دائما كما أنها تجعل الموضوع أكثر ثراءً.

      إضافة بسيطة ، طريقة أخرى بإستخدام الـ (Threading) لجعل البرنامج يواصل باقي العمليات عند إستخدام (MsgBox) . . .

      تحياتي (RealNoooH)

    4. #4
      التسجيل
      12-07-2004
      المشاركات
      247
      المواضيع
      25
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      اممممممممم

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

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

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

      وسوري على الاطاله
      خط سير العمر
      الكويت - الرياض - الكويت

    5. #5
      التسجيل
      23-08-2007
      الدولة
      مهد فيض العرب (اليمن)
      المشاركات
      84
      المواضيع
      8
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      السلام عليكم

      الأخ (TeamFlex) مشكور وباقي الأعضاء على المشاركة ، بس عندي سؤال عن كيفية معرفة أن الثريد يقوم بتنفيذ السطر الأول ثم يعود إلى السطر الأول من الكود الثاني وهكذا . . .

      تحياتي (RealNoooH)
      الـدنـيـــا ريـــال إلا ربـــع ::: مــا تـــوفـــــى أبـــــد

    6. #6
      التسجيل
      12-07-2004
      المشاركات
      247
      المواضيع
      25
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      لي سنة من خلصت دورة MCSD وما جربت ابدا استخدم الثريد لعدم الحاجة
      لكن بكتبلك مثال بسيط جدا ويحبه قلبك

      سولك Form وحط فيها Button

      ضيف للبرنامج هالمكتبة :
      كود PHP:
      Imports System.Threading 
      كذا راح تظيف المكتبة الخاصة بلثريدنق

      داخل البوتن حط هالكود:
      كود PHP:
      Dim Thread1 As ThreadStart = New ThreadStart(AddressOf TheFun)
      Dim ThreadOne As Thread = New Thread(Thread1)
      ThreadOne.Name "First"
      Dim ThreadTwo As Thread = New Thread(Thread1)
      ThreadTwo.Name "Second"
      ThreadOne.Start()
      ThreadTwo.Start() 

      السطر الاول :عرفتلي (امر الثريد) الي راح ينفذ الكود الموجود في السوب TheFun واسمه Thread1
      السطر الثاني :عرفتلي الثريد الاول الي راح ينفذ (امر الثريد) واسمه ThreadOne
      السطر الثالث :عطيت الثريد الاول اسم ظاهري اقدر منه اعرف اي ثريد يشتغل عندي حاليا
      السطر الرابع :عرفت الثريد الثاني الي كذلك ينفذ (امر الثريد) واسمه ThreadTwo
      السطر الخامس :عطيت اسم ظاهري مثل السابق
      السطر السادس و السابع :طلبت بتشغيل الثردين

      حط هالـ Sub داخل البرنامج:
      كود PHP:
      PrivateSub TheFun()
      For 
      AutoNum AsInteger 0 To 10
      MessageBox
      .Show(Thread.CurrentThread.Name "-" AutoNum)
      Next
      EndSub 
      هالسوب عرفتلي فاريبل من نوع انتيجر وحطيته في لوب يمشي من صفر الين عشرة
      وكل مرة يدور راح يطلعلي اسم الثريد الظاهري الي يشتغل و الرقم المخزن في الفاريبل

      ==============

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

      وموفق
      خط سير العمر
      الكويت - الرياض - الكويت

    7. #7
      التسجيل
      01-07-2007
      المشاركات
      41
      المواضيع
      5
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      شكرا على المعلومات والكود
      اخوكم فتى البرمجة

    8. #8
      التسجيل
      23-08-2007
      الدولة
      مهد فيض العرب (اليمن)
      المشاركات
      84
      المواضيع
      8
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      السلام عليكم

      شكراً أخ (TeamFlex) على الشرح ، بس سؤالي كيف قمت بإثبات أن الثريدينغ يقوم بتنفيذ السطر الأول من الكود الأول ثم يقوم يتنفيذ السطر الأول من الكود الثاني وهكذا . . .

      تحياتي
      الـدنـيـــا ريـــال إلا ربـــع ::: مــا تـــوفـــــى أبـــــد

    9. #9
      التسجيل
      12-07-2004
      المشاركات
      247
      المواضيع
      25
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      ما اعتقد اني اثبت قصدك
      ما شفت من قبل حركة الثريد لان التريستنق ما يتتبع حركته


      يمكن اشتغلت على موضوعك بالمثال الي حطيته
      بس بشكل عام الثريدنق قدر يشغل الكود كلن على حدا بدون ما يعطل الكود الاولي الكود الثاني
      واعتقد هذا حدي
      خط سير العمر
      الكويت - الرياض - الكويت

    10. #10
      التسجيل
      22-07-2007
      المشاركات
      153
      المواضيع
      12
      شكر / اعجاب مشاركة

      رد: هل تعلم أن البرنامج يتوقف عن مواصلة مهامة عند اظهار (MsgBox)

      السلام عليكم
      شكرا على الموضوع الجميل واحب اضيف ان الinputbox هو الاخر عن استدعائه يتوقف البرنامج عن العمل
      بالتوفيق

      قولوا لا إله إلا الله تفلحوا

      مدونتي (برامج والعاب) من تصميمي

    ضوابط المشاركة

    • لا تستطيع إضافة مواضيع جديدة
    • لا تستطيع الرد على المواضيع
    • لا تستطيع إرفاق ملفات
    • لا تستطيع تعديل مشاركاتك
    •