|
استخدام فصيلة CRectTracker
بسم الله الرحمن الرحيم
السلام عليكم ورحمة الله وبركاته وبعد
اخواني الأعزاء الكثير منا يرى ان الفيجوال سي ++ صعبة للغاية وقد كنت من
الذين يفكرون هكذا ولكن ومع مرور الوقت فقد اكتشفت عكس ذلك فالطريقة
الصحيحة التي تجعلك متمكناً من الفيجوال سي ++ بالشكل المطلوب هو التطبيق
وعدم الإكتفاء بالقراءة فقط.
وإليكم درس اليوم:
سنتحدث اليوم عن احد الفصائل الموجودة بمكتبة ام اف سي وهي فصيلةCRectTracker
التي تمكنك من اظهار مربع ذو حدود معينة عند الضغط على الفأرة وتحديد منطقة
معينة داخل المربع المرسوم والأن لنبدأ الدرس:
أولاً قم بفتح الفيجوال سي ++ ثم قم باختيار برنامج تنفيذي exe واعطه اسماً ثم
انقر على Next في الخطوة الثانية اختر Single Document وانقر Next الى
النهاية واقبل الخيارات الإفتراضية جميعها من التبويب Class الموجود في اسفل
الشاشة اختر الفصيلة C...View حيث هذه النقاط تعني الأسم الذي اخترته
للبرنامج فإذا اخترت مثلا Mon سيكون اسم الفصيلة CMonView وهكذا لنكمل الأن
انقر زري Ctrl + W يظهر لك معالج الرسائل اختر الفصيلة C...View ثم اختر
الرسالة WM_MOUSEMOVE من القائمة الموجودة بالأسفل ثم اكتب الكود التالي:
CRectTracker tracker;
if((nFlags & MK_LBUTTON) == MK_LBUTTON)
{
tracker.TrackRubberBand (this,point,TRUE);
}
قم بتشغيل التطبيق وتنفيذه ثم قم بالضغط على زر الفأرة الايسر وحرك الماوس
وانظر ماذا يحدث انها تقوم برسم حدود واذا كنت تريد رسم مربع مثل الموجود
ببرنامج الرسام الموجود بويندوز فقم بتعديل الكود السابق ليصبح كالتالي:
CRectTracker tracker;
CRect rect;
tracker.m_Style = CRectTracker:: solidLine;
if((nFlags & MK_LBUTTON) == MK_LBUTTON)
{
tracker.TrackRubberBand (this,point,TRUE);
tracker.GetTrueRect (&rect);
}
المزيد من المواضيع
الدرس الثاني
كيفية عمل ارتباط بالبريد الألكترونى وموقع على الانترنت - الجزء الثاني
كيفية عمل ارتباط بالبريد الألكترونى وموقع على الانترنت - الجزء الاول
كيف تقوم بأضافة دائما فى المقدمة أو Always on top لبرنامج مكتوب بالفيجوال سى برمجيا الجزء الثانى
كيف تقوم بأضافة دائما فى المقدمة أو Always on top لبرنامج مكتوب بالفيجوال سى برمجيا الجزء الأول
جعل البرنامج Always on top برمجيا بالفيجوال سى 6
جعل البرنامج Always on top برمجيا بالفيجوال سى 6
البداية مع VC++6
|