المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : عمل قائمة للجرافيكس



بيبسيه
04-03-2005, 12:54 AM
سنتعلم في هذا الدرس بإذن الله كيفية عمل قائمة خاصة بالجرافيكس :
قم بفتح برنامج Microsoft Visual C ++ .o
File -> new
فتظهر لنا هذه الصورة :

http://www.c4arab.com/images/lessons/programming/c++/graphic/css1.gif
ثم نختار


http://www.c4arab.com/images/lessons/programming/c++/graphic/css2.gif



ثم نضغط Next للموافقة على باقي الخيارات ثم تضغط على finish .

فتظهر لنا الصورة 3 : نختار منها Resource View ومنها نختار IDR_MAINFRAME

http://www.c4arab.com/images/lessons/programming/c++/graphic/css3.gif
ستظهر لنا نافذة بها مجموعة من القوائم والآن سنقوم بإضافة قائمة جديدة نطلق عليها اسم Graphics تحتوي على أوامر لرسم الخط ورسم المستطيل ورسم الدائرة وأمر المسح . ولإضافة القائمة قم بالضغط على المربع المنقط ضغطتين متتالين ثم اكتب ما تريد ..كما في الصورة 4:http://www.c4arab.com/images/lessons/programming/c++/graphic/css4.gif


بعد انتهائنا من إدراج القائمة سنقوم بكتابة الأوامر :

اضغط مفتاحي Ctrl+w لعرض مربع Class Wizard
ومن قائمة Object IDs نختار ID_GRAPHICS_LINEثم نختار Command ثم ADD Function ثم OK
http://www.c4arab.com/images/lessons/programming/c++/graphic/css5.gif

بيبسيه
04-03-2005, 12:58 AM
قمنا بتحديد الكلمة Line ولإضافة الأمر له نقوم بالضغط على Edit Code

ثم نكتب هذا الكود :


void CMainFrame::OnGraphicsLine()
{
// TODO: Add your command handler code here
int i;

CDC*PDC = GetDC();
for(i=0;i<100;i++)
{
PDC->MoveTo(-100,-200);
PDC->LineTo(300,400);
}
}



شرح الكود :
قمنا بتعريف متغير أسمه PDC من النوع CDC وهو متغير يذهب بنا إلي شاشة الرسم وذلك نتيجة العمل بوظيفة الأمر GetDC
حددنا نقطة البداية في الإحداثيات (-100,-200) ونقطة النهاية في الإحداثيات (300,400)
قمنا بتكرار الأمر 100 مرة .

ولتجربة الكود السابق قم بالضغط على مفتاحي Ctrl+F5.

http://www.c4arab.com/images/lessons/programming/c++/graphic/css6.gif


رسم المستطيل :



ولإضافة أمر رسم المستطيل نقوم بالخطوات السابقة ونختار من Object IDs المستطيل وهو Rectangle. ثم نضيف الكود التالي :




void CMainFrame::OnGraphicsRectangle()
{
// TODO: Add your command handler code here
int i ;
CDC*PDC = GetDC();
PDC->MoveTo(10,300);
PDC->Rectangle(100,100,200,200);

}



فتكون النتيجة :
http://www.c4arab.com/images/lessons/programming/c++/graphic/css7.gif


رسم الدائرة :



ولإضافة أمر رسم الدائرة نقوم بالخطوات السابقة ونختار من Object IDs الدائرة وهو Ellipse. ثم نضيف الكود التالي :




void CMainFrame::OnGraphicsEllipse()
{
// TODO: Add your command handler code here
int i ;
CDC*PDC = GetDC();
PDC->MoveTo(0,100);
PDC->Ellipse(100,100,200,200);

}



فتكون النتيجة :http://www.c4arab.com/images/lessons/programming/c++/graphic/css8.gif



ولرسم الشكل البيضاوي قم بكتابة الإحداثيات : (100,50,300,300)




أمر المسح Clear :


لمسح الشاشة يمكنك إضافة الأمر


void CMainFrame::OnGraphicsClear()
{
// TODO: Add your command handler code here
system("clrs");
}






اتمنى اكون افدتكم بشي:reporter: