اجعل رورو44 صفحتك الرئيسية | احفظ رورو44 في مفضلتك | ارسل رورو44 إلى صديقك | أعلن على رورو44 | English Interface

 

 

 

شات خدمات مسجات جوال بطاقات رسائل حب دليل مواقع شات خليجي  دردشة منتديات حسناء الفارس عالم الرومانسية

مواقع سعودية | مواقع كويتية | مواقع بحرينية | مواقع قطرية | مواقع عمانية | مواقع يمنية | مواقع عراقية | مواقع اماراتية

 
    دروس في لغات البرمجة   فيجوال سي ++ - ++ Visual C
 

 

جعل البرنامج Always on top برمجيا بالفيجوال سى 6



هذا الدرس سنتعلم فيه كيفية عمل الDialogBox أو مشروعنا من نوع     MFC Application Dialog base دائما فى المقدمة أو     Always in top .

 

هذ بالطبع بالأضافة الى أننا سنتعلم أيضا تفعيل هذ الخاصية أو ألغاء     تفعيلها بمعنى أننا سنتحكم فى ال     Dialog أذا كنا نريده دائما فى المقدمة أى أعلى كل     التطبيقات العاملة أم لا     .

 

ولنكف عن الكلام ولنبدأ الأن    .

 

ملحوظة

 

ليعذرنى من هو متمكن من لغة الفيجوال سى من اننى سأشرح بالتفصيل لمن     هو مازال مبتدئ ولكل من هو متمكن يمرر الخطوات التى يعرفها ويكمل الأجزاء التى     يجدها جديده بالنسبة له

 

أولا قم بتشغيل بيئة الفيجوال سى من قائمة     Start ثم     Programs (فى ويندوز مى او 98 ) أو     AllPrograms (فى ويندوز أكس بى) ومنها أختار     Microsoft Visual Studio 6.0 ومنها     Microsoft Visual C++ 6.0

 

وسيبدا البرنامج فى العمل حتى تحصل على بيئة الفيجوال سى كما بهذا     الشكل

 

                               

 

شكل(1    )

 

من قائمة     File أختار     New (أو أضغط     Ctrl+N ) لتبدأ مشروع     جديد    .

 

 

 

شكل (2    )

 

سيفتح لك     New Projects من القئمة التى فى اليسار أختار     MFC AppWizard(EXE) وبداخل مربع الكتابة أسفل     Project nameفى اليمين أكتب أسم     المشروع (بالطبع اى أسم يحلو لك ولكن سأفترض انه     Alwaysontop)

 

ملحوظة

 

يوجد أسفل اسم المشروع خانة لتحديد مكان تخزين المشروع     Location حيث ان بيئة الفيجوال سى     تحفظ المشروع فى بداية أنشائه وأى تطور فيه أو تحديث يحدث أما ان تحفظه من قائمة     File ثم     Save أو فى حالة عمل     Buildسيحفظ تلقائى

 

بعد ان البيانات هنا نضغط على زر     OK

 

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

 

ولكن دعنا نمشى خطوة خطوة

 

 

 

شكل (3    )

 

فى الخطوة الأولى

 

سيسألك المعالج عن نوع البرنامج التى تريد أنشائه

 

ويعطيك ثلاث اختيارات

 

أما     Single document اى برنامج ذو وثيقة واحدة مثل برنامج     NotePad فى الويندوز والتى لا يسمح بفتح أكثر من وثيقة     فى البرنامج الواحد ولكن يمكنك فتح البرنامج أكثر من مرة كل مرة بوثيقة

 

أو الأختيار الثانى     Multiple documents أى برنامج متعدد الوثائق كبرنامج     MS Word والتى يسمح لك فتح اكثر من وثيقة فى     البرنامج الواحد

 

أما الأختيار الثالث وهو الأختيار التى سنعمل عليه والتى يعتبر     المفضل بالنسبة لى وبالنسبة لمعظم مستخدمى هذه اللغة لبساطته وممكن أيضا التحكم فيه     بسهولة من حيث الشكل والخصائص وهو     Dialog based أو مربعات الحوار وهذه مثل النافذة التى تحمل الخصائص فى     أى برنامج    

 

كما ذكرت أننا سنختار الأختيار الثالث

 

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

 

سنضغط على     Next

 

 

 

شكل(4    )

 

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

 

ولكن يمكنك أضافة     Context-sensitive Help وهوملف المساعدة للبرنامج التى ستكتبه ولكن لن     أتطرق أيها الأن

 

ملاحظة

 

الأختيار     About Box هو المسئول عن تكوين نافذة لتوضيح كاتب البرنامج سواء كان     فرد او شركة ألخ    

 

فى أسفل النافذة يوجد     Please enter a title for your dialog وهى المسئولة عن الأسم التى     سيظهر فى شريط العنوان للبرنامج كذلك فى شريط العنوان للويندوز

 

يمكنك تغييرها الى     Always On Top كذلك يمكنك تغييرها من داخل البرنامج أثناء برمجته    

 

والأن أضغط على     Next أو     Finish بالطبع لو أردت أنها المعالج بهذه الخصائص     والدخول الى كتابة الكود

 

 

 

شكل(5    )

 

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

 

والأن الى أهم سؤال فى هذه النافذة وهو ماذا تريد أستخدامه فى مكتبة     MFC Library

 

وفيها أختياران

 

الأول     As ashared Dll وهو الأختيار البدائى وهو ما سنختاره ومعناه أن     ملفات الDll المشتركه بين     البرنامج ونظام التشغيل ستترك لنظام التشغيل أى انها موجوده فيه ولا تخف فى موجوده     فى جميع انظمة التشغيل وميزته انه سيعطى لك برنامج حجمه صغير بالمقارنه بالأختيار     الأخر

 

الثانى     As statically linked library وهو ربط الملفات مع البرنامج وبالطبع سيجعل حجم     البرنامج كبير

 

والأن أضغط على     Next

 

 

 

شكل(6    )

 

والأن مع أخر خطوة والتى سيبين لك المعالج عن الأصناف التى ستستخدم     داخل البرنامج ولن تجد ألا     Finish ولن تجد     Next أضغط على     Finish

 

 

 

شكل(7    )

 

والتى سيعطى لك معلومات عن مشروعك بناء على الأختيارات التى     أخترناها أضغط على     Ok للدخول     على بيئة التصميم

 

 

 

شكل(8    )

 

أضغط نقره يسرى على     TODO: Place dialog controls here ثم أضغط على زرDelete فى لوحة المفاتيح لحذف هذه الجملة والتى تعتبر     كملاحظة لا نحتاجها داخل البرنامج

 

ولشرح بيئة التصميم

 

فى يمين الشاشة يوجد شريط أدوات التصميم من أزار و صناديق اختيار     .... ألخ وفى المنتصف منطقة العمل والتى سنصممها وهى النافذه التى سيظهر برنامجك     بها فى النهاية أما على يسار الشاشة يوجد ثلاث أختيارات     ResourceView المسئولة عن أظهار مصادرك من مربع حوار     وصور ألخ و     ClassView والتى     ستظهر الأصناف التى ستعمل بها أو للتبسيط الدوال المستعملة داخل البرنامج     وFileViewوالتى ستظهر لك ملفات     الأكواد داخل برنامجك

 

والأن نقوم بأضافة     Check Box الى منطقة العمل ونحدد حجمه ومكانه كما يمكننا تحديد حجم     منطقة العمل كما هو موضح بالأشكال الأتية    :

 

 

 

شكل(9    )

 

 

 

شكل(10    )

 

وسنجد أن برنامجنا لا يقرأ اللغة العربية ولكنه سيظهر لك كلمات     غريبه كهذه مثلا     " " ÏÇÆãÇ ÈÇáÃÚáì عند كتابة أى كلمة عربية ولحل هذه المشكلة

 

تاكد من أنك على     ResourceView ثم أنقر على     Alwaysontop resources نقره مزدوجة ثم على     Dialog أيضا نقره مزدوجة ثم أنقر كليك يمين     على     IDD_ALWAYSONTOP_DIALOG وأختار     Properties ستفتح لك     نافذةDialog Properties ومن     Language أختار اللغة     Neutral(Sys. Default) كى يقرأ     اللغة العربية ثم أضغط     Enter من لوحة المفاتيح

 

 

 

شكل(11    )

 

 

 

شكل(12    )

 

نقوم بالنقر كليك يمين على الCheck Boxونختار من القائمة التى ستظهر لنا     Properties

 

سيظهر لنا مربع     Check Box Properties وفيه من     ID نغير الأسم الى     IDC_TOP ومن     Caption نغير العنوان الى دائما بالأعلى    

 

 

 

شكل(13    )

 

 

 

شكل(14    )

 

والأن لماذا أخترنا     Check Box والسبب أن هذه الدالة لها حالتين حالة عند وجود علامة صح     بجوارها وحالة أخرى عن عدم وجود هذه العلامة بجوارها فمثلا عند وجود علامة الصح هذا     معناه أن البرنامج سيكون أعلى كل التطبيقات بمعنى أن أى برنامج سيعمل سيكون     برنامجنا فوقه (ظاهر على الشاشة دائما    )

 

أما فى الحالة الأخرى فأن أى برنامج أخر سيعمل بعد برنامجنا سيكون     هو بالأعلى    .

 

والأن يجب أن نعطى لأداة الCheck Box أسم متغيير من أجل حساب هل الأداة عاملة (بجوارها علامة     صح) أم لا هذا من خلال النقر نقرتين     (Double Click )+الضغط على     )Ctrl) فى نفس الوقت أى     Ctrl+(Left mouse button Double Click) أو من طريق أخر

 

أضغط على     (Ctrl+W) من لوحة المفاتيح لتفتح     MFC ClassWizard ثم تأكد أنك على     Member Variables وأختار     IDC_TOP من     Control IDs ثم أضغط على زر     Add Variables

 

ستفتح لك نافذة     Add Member Variable ثم أدخل فى خانة     Member variable name أسم متغير وليكن     m_top وتأكد من أنه من النوع     Value بداخل     Category وهذه القيمة من نوع     BOOL بداخل     Variable type ثم أضغط على     OK لتعود الى بيئة العمل أنظر الأشكال

 

 

 

شكل(15    )

 

 

 

شكل(16    )

 

 

 

شكل(17    )

 

وبهذا تكون الأداة جاهزة للعمل ولكن يتبقى لنا الكود     ..

 

والأن أنقر كليك مزدوجة أو     Double click على ال     Check Box من أجل أضافة دالته الى الكود ثم أضغط على     Ok أو من طريق اخر أضغط على     (Ctrl+W) من لوحة المفاتيح لتفتح     MFC Class Wizard ثم تأكد انك     على     Message Maps

 

 

 

شكل(18    )

 

 

 

شكل(19    )

 

ملاحظة    

 

يجب أن تتاكد من أن     Class name هو     CAlwaysontopDlg لأن فى هذا البرنامج     يوجد

 

CAlwaysontopDlg و     CAlwaysontopApp و     CAboutDlg وأى واحدة فيهم غير     CAlwaysontopDlg ستؤدى الى فشل البرنامج أى عدم الحصول على الهدف     المطلوب

 

ثم أختار     IDC_TOP من     Object IDs ومن ال     Messages أختار     BN_CLICKED ثم أضغط على زر     Add Function لأضافة الدالة الى الكود ثم     أضغط على     OK

 

كما هو بالشكل

 

 

 

شكل(20    )

 

ثم أضغط على     Edit Code سينقلك الفيجوال سى الى المنطقة التى سنكتب فيها الكود والى المكان التى     ستكتب الكود فيه بالتحديد

 

ملاحظة

 

لو فقدت مكان أضافة الكود تأكد من انك بداخل الملف     AlwaysontopDlg وأبحث عن الدالة     void CAlwaysontopDlg::OnTop

 

للوصول الى الملف     AlwaysontpDlg من     FileView أنظر أول الدرس لمعرفة ما هى     FileView فى حالة نسيانها أنقر على     Alwaysontop files نقره مزدوجه     ثم أنقر على     Source files نقره     مزدوجة أيضا ثم على     AlwaysontopDlg.cpp نقره مزدوجه ليفتح لك ملف الكود وأبحث بداخله عن دالة     void CAlwaysontopDlg::OnTop()