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

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



صقر البصره
09-24-2006, 02:55 PM
السلام عليكم ورحمة الله وبركاته

سنتعلم في هذا الدرس بإذن الله كيفية عمل قائمة خاصة بالجرافيكس :
قم بفتح برنامج Microsoft Visual C ++ .o
File -> new
فتظهر لنا هذه الصورة 1:
http://www.c4arab.com/images/lessons/programming/c++/graphic/css1.gif

بعدين كما في الصورة 2:



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
قمنا بتحديد الكلمة 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");
}

تقبلو تحياتي

ملك الكلمات
09-24-2006, 04:46 PM
الف شكر حبيبي موضوع روعه وقيم

ذيب بغداد
09-24-2006, 04:54 PM
عاشت ايدك حبي دوم الابداع والتطور ::13::

YaLaN_SeVdA
09-24-2006, 07:49 PM
شكرا اخوية على الشرح القيم والواضح
عاشت الايادي

صقر البصره
09-24-2006, 08:00 PM
تسلمون على المرور الكريم وتدللون اخواني الاعزاء

AltaibSkt
09-24-2006, 08:52 PM
مشكور حبيبي على الموضوع

صقر البصره
09-24-2006, 09:29 PM
تدلل عيني skt وتسلم على المرور الكريم

كلكامش
09-25-2006, 12:22 AM
عاشت ايدك على الشرح الروعة الى الامام ان شاء الله

صقر البصره
09-25-2006, 12:31 AM
وانت العايش و تسلم حبي كلكامش على مرورك الكريم

مُتمسكةٌ بجُنوني
09-25-2006, 10:25 AM
عاشت ايدك صقور انت روعة

صقر البصره
09-25-2006, 12:12 PM
تسلمين على المرور الكريم اخت شموسه وتدللين