• الإعلانات

    • فيصل الحربي

      تسجيل عضوية جديدة في المنتدى   01/31/2016

      السلام عليكم ورحمة الله وبركاته  عزيزي العضو الجديد :  حاليا رسالة الإيميل لتأكيد صحة إيميلكم تذهب للبريد العشوائي ( جاري حل المشكلة )  فإذا لم تجد رسالة التحقق من إيميلكم في صندوق الوارد لديكم إتجه للبريد العشوائي ( JUNK)  وقم بتفعيل إشتراككم من هناك   

البحث في المنتدى

Showing results for tags 'GUI VC++ GLUT console'.

  • البحث بالتاقات

    اكتب الكلمات المفتاحيه بينها علامه الفاصله
  • البحث بكاتب الموضوع

تم إيجاد 15 نتيجة

  1. السلام عليكم ورحمة الله وبركاته بدايتي السيئة جداً مع الـ OpenGL :thumb_down: فأنا ادرس الجرافكس بشكل نظري ولكن أردت التطبيق من أجل ترسيخ المعلومات وايضاً حبي للجرافكس لدي كتاب رائع للكاتب angel بعنوان interactive computer graphics لمن اراد القراءة والتثقف ايضاً في هذا الموضوع لكن المشكلة هنا أنني لا استطيع تثبيت مجموعة المكتبات القادمة مع هذا الكتاب في جهازي قمت بنسخ الـ glut.h في مجلد داخل include قمت بنسخ الصيغه dll داخل مللف windows/system32 قمت بنسخ جميع المكتبات بالشكل المطلوب وهنا قام الكاتب بنشر الأكواد المستخدمة في الكتاب على هذا الرابط  كمرجع مفتوح: http://www.cs.unm.edu/~angel/BOOK/INTERACTIVE_COMPUTER_GRAPHICS/SIXTH_EDITION/CODE/   المشكلة هنا البرنامج يخبرني بأنه لا يجد freeglut وايضا لا يظهر لي شيء سوا نافذه بيضاء عندما قمت بنسخ كود تجريبي تم انشاءه باستخدام مكتبات الرسوم الموجوده في c++     ايضاً النسخة للبرنامج الموجودة على جهازي هي Visual Studio 2013   اتمنى المساعدة أنا متحمسة جداً لاتعلم المادة ولكني تحطمت من البرنامج :cry:
  2. لدي هذا السؤال في ملف محاضرت الرسم بالحاسب Design an application that allows user to draw an any object as follows: -Based on pressing ‘P’ or ‘p’ object rendered in a point mode. - Based on pressing ‘L’ or ‘l’ object rendered in a line mode. - Based on pressing ‘G’ or ‘g’ object rendered in a polygon mode. - use the arrow keys to translate the object in a relative direction (up, right, down, and left). - use the mouse button to activate a menu the include the following:   - Transformation                                      scaling                                      rotation         - Object color                                     sample colors         -  Background color                                     sample color         -  Quit (to end execution of the program) لقد كنت احاول حله منذ مدة لكن لم اصل للحل النهائي لذا اذا لدى احدكم علم بالحال او بطريقة الحل او اي شيئ فانى الله لايضيع اجر من احسن عملا .  ملاحظة انا لا اطلب منكم ان تغششوني الحل لقد حاولت ولقد كتبة ومسحت مئات الاسطر ان لم يكن الالاف لكن لا استطيع ايجاد الحل المناسب لا اريد شرح السؤال لاني اعلم بالتحديد مالمطلوب لكن اريد المساعدة في الحل لقد جلست على هذه المسئلة مايقارب 20ساعة متصلة ان لم يكن اكثر  لذا ارجوا عدم اتهامي بالغش وافضل غلق المضوع على ذالك . اذا اردم اكودي التي كتبتها سوف الصقها ما توصلة اليه بالاحر في تعليق  ولكنها طويلة ومبعثر وهذا سبب عدم ارفاقها بالموضوع وشكرا.   
  3. السلام عليكم ورحمة الله وبركاته بدايتي السيئة جداً مع الـ OpenGL :thumb_down: فأنا ادرس الجرافكس بشكل نظري ولكن أردت التطبيق من أجل ترسيخ المعلومات وايضاً حبي للجرافكس لدي كتاب رائع للكاتب angel بعنوان interactive computer graphics لمن اراد القراءة والتثقف ايضاً في هذا الموضوع لكن المشكلة هنا أنني لا استطيع تثبيت مجموعة المكتبات القادمة مع هذا الكتاب في جهازي قمت بنسخ الـ glut.h في مجلد داخل include قمت بنسخ الصيغه dll داخل مللف windows/system32 قمت بنسخ جميع المكتبات بالشكل المطلوب وهنا قام الكاتب بنشر الأكواد المستخدمة في الكتاب على هذا الرابط  كمرجع مفتوح: http://www.cs.unm.edu/~angel/BOOK/INTERACTIVE_COMPUTER_GRAPHICS/SIXTH_EDITION/CODE/   المشكلة هنا البرنامج يخبرني بأنه لا يجد freeglut وايضا لا يظهر لي شيء سوا نافذه بيضاء عندما قمت بنسخ كود تجريبي تم انشاءه باستخدام مكتبات الرسوم الموجوده في c++     ايضاً النسخة للبرنامج الموجودة على جهازي هي Visual Studio 2013   اتمنى المساعدة أنا متحمسة جداً لاتعلم المادة ولكني تحطمت من البرنامج :cry:
  4. طلب مساعدة في glutMotionFunc

    أنا حابة أعمل برنامج مثل برنامج الرسام بواسطة  GLUT   يتم قراءة قيمة x و y  بواسطة  glutMotionFunc   ثم يتم الرسم بواسطة  GL_LINE_STRIP   المشكلة هي  glutMotionFunc   يتم قراءة قيم x , y   بناء على احداثيات شاشة window   وعند الرسم بواسطة  glVertex2f   لازم تكون قيمة x y  بناء على احداثيات  viewpoint   كيف يتم تحويل قيم x , y  بعد قرائتها بواسطة  glutMotionFunc     ليتم الرسم  بواسطة  glVertex2f   ؟      الكود موجود بالأسفل الرجاء التوضيح ما هو الخطأ فيه: #include <windows.h> #include <GL/glut.h> bool writeFlag=false;float posX,posY;void initGL() { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); } void idle() { glutPostRedisplay(); } void display() { glClear(GL_COLOR_BUFFER_BIT); glColor3f(0.0f, 0.0f, 1.0f); glBegin(GL_LINE_STRIP); while(writeFlag) { glVertex2f(posX, posY); } glEnd(); glutSwapBuffers(); }void reshape(GLsizei width, GLsizei height) { if (height == 0) height = 1; // To prevent divide by 0 GLfloat aspect = (GLfloat)width / (GLfloat)height; glViewport(0, 0, width, height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); if (width >= height) { gluOrtho2D(-1.0 * aspect, 1.0 * aspect, -1.0, 1.0); } else { gluOrtho2D(-1.0, 1.0, -1.0 / aspect, 1.0 / aspect); }}void keyboard(unsigned char key, int x, int y){ switch (key) { case '1': writeFlag=true; break; case '2': writeFlag=false; break; case 27: exit(0); break; }}void Motion(int x, int y) { posX=x; posY=y;} int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); glutCreateWindow("Simple Paint program by GLUT"); glutInitWindowSize(640, 480); glutInitWindowPosition(50, 50); glutDisplayFunc(display); glutReshapeFunc(reshape); glutKeyboardFunc(keyboard); glutMotionFunc(Motion); // mouse click and move glutIdleFunc(idle); initGL(); glutMainLoop(); return 0;} 
  5. طلب مساعدة في glutMotionFunc

    أنا حابة أعمل برنامج مثل برنامج الرسام بواسطة  GLUT   يتم قراءة قيمة x و y  بواسطة  glutMotionFunc   ثم يتم الرسم بواسطة  GL_LINE_STRIP   المشكلة هي  glutMotionFunc   يتم قراءة قيم x , y   بناء على احداثيات شاشة window   وعند الرسم بواسطة  glVertex2f   لازم تكون قيمة x y  بناء على احداثيات  viewpoint   كيف يتم تحويل قيم x , y  بعد قرائتها بواسطة  glutMotionFunc     ليتم الرسم  بواسطة  glVertex2f   ؟      الكود موجود بالأسفل الرجاء التوضيح ما هو الخطأ فيه: #include <windows.h> #include <GL/glut.h> bool writeFlag=false;float posX,posY;void initGL() { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); } void idle() { glutPostRedisplay(); } void display() { glClear(GL_COLOR_BUFFER_BIT); glColor3f(0.0f, 0.0f, 1.0f); glBegin(GL_LINE_STRIP); while(writeFlag) { glVertex2f(posX, posY); } glEnd(); glutSwapBuffers(); }void reshape(GLsizei width, GLsizei height) { if (height == 0) height = 1; // To prevent divide by 0 GLfloat aspect = (GLfloat)width / (GLfloat)height; glViewport(0, 0, width, height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); if (width >= height) { gluOrtho2D(-1.0 * aspect, 1.0 * aspect, -1.0, 1.0); } else { gluOrtho2D(-1.0, 1.0, -1.0 / aspect, 1.0 / aspect); }}void keyboard(unsigned char key, int x, int y){ switch (key) { case '1': writeFlag=true; break; case '2': writeFlag=false; break; case 27: exit(0); break; }}void Motion(int x, int y) { posX=x; posY=y;} int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); glutCreateWindow("Simple Paint program by GLUT"); glutInitWindowSize(640, 480); glutInitWindowPosition(50, 50); glutDisplayFunc(display); glutReshapeFunc(reshape); glutKeyboardFunc(keyboard); glutMotionFunc(Motion); // mouse click and move glutIdleFunc(idle); initGL(); glutMainLoop(); return 0;}
  6. طلب مساعدة في glutMotionFunc

    أنا حابة أعمل برنامج مثل برنامج الرسام بواسطة  GLUT   يتم قراءة قيمة x و y  بواسطة  glutMotionFunc   ثم يتم الرسم بواسطة  GL_LINE_STRIP   المشكلة هي  glutMotionFunc   يتم قراءة قيم x , y   بناء على احداثيات شاشة window   وعند الرسم بواسطة  glVertex2f   لازم تكون قيمة x y  بناء على احداثيات  viewpoint   كيف يتم تحويل قيم x , y  بعد قرائتها بواسطة  glutMotionFunc     ليتم الرسم  بواسطة  glVertex2f   ؟      الكود موجود بالأسفل الرجاء التوضيح ما هو الخطأ فيه: #include <windows.h> #include <GL/glut.h> bool writeFlag=false;float posX,posY;void initGL() { glClearColor(1.0f, 1.0f, 1.0f, 1.0f); } void idle() { glutPostRedisplay(); } void display() { glClear(GL_COLOR_BUFFER_BIT); glColor3f(0.0f, 0.0f, 1.0f); glBegin(GL_LINE_STRIP); while(writeFlag) { glVertex2f(posX, posY); } glEnd(); glutSwapBuffers(); }void reshape(GLsizei width, GLsizei height) { if (height == 0) height = 1; // To prevent divide by 0 GLfloat aspect = (GLfloat)width / (GLfloat)height; glViewport(0, 0, width, height); glMatrixMode(GL_PROJECTION); glLoadIdentity(); if (width >= height) { gluOrtho2D(-1.0 * aspect, 1.0 * aspect, -1.0, 1.0); } else { gluOrtho2D(-1.0, 1.0, -1.0 / aspect, 1.0 / aspect); }}void keyboard(unsigned char key, int x, int y){ switch (key) { case '1': writeFlag=true; break; case '2': writeFlag=false; break; case 27: exit(0); break; }}void Motion(int x, int y) { posX=x; posY=y;} int main(int argc, char** argv) { glutInit(&argc, argv); glutInitDisplayMode(GLUT_RGBA | GLUT_DOUBLE | GLUT_DEPTH); glutCreateWindow("Simple Paint program by GLUT"); glutInitWindowSize(640, 480); glutInitWindowPosition(50, 50); glutDisplayFunc(display); glutReshapeFunc(reshape); glutKeyboardFunc(keyboard); glutMotionFunc(Motion); // mouse click and move glutIdleFunc(idle); initGL(); glutMainLoop(); return 0;}
  7. السلام عليكم   أنا عملت برنامج باستخدام  Visual C++ ( console application واستخدمت أيضا مكتبة GLUT     المشكلة أريد تصميم واجهة للبرنامج بحيث تحتوي الشاشة على المكونات التالية: panel - button - radio button and drop down list   أريد فقط مكتبة لتصميم الواجهة؟ جربت استخدام المكتبة  GLUI  لكنها لا تدعم اللغة العربية   انا قرأت عن qt  وأنها ممتازة في التصميم لكن لا يوجد مصادر تشرح كيف يمكن أضافة QT  في VC++  كتصميم واجهة  بل جميع المصادر توضح كيف يمكن كتابة مشروع Qt  داخل بيئة .net   فهل يوجد حل لمشكلتي المشروع حقي لازم يكون تحت بيئة VC++ (console application) وأنا كتبت الكود بالكامل باستخدام GLUT     فهل يوجد مكتبة لعمل الواجهة وممكن مثال عليها ؟      
  8. السلام عليكم   أنا صممت برنامج graphics  باستخدام  Visual C++        واستخدمت المكتبات التالية:   GLUT    وايضا استخدمت   مكتبة   GLUI لتصميم  GUI  مثل button & label  ولكن فوجئت  بعد  الانتهاء من كتابة البرنامج أن مكتبة   GLUI   لا تدعم  الكتابة العربية    فهل يوجد هل استخدام الكتابة العربية على الأدوات مثل  label  أو  Button  بواسطة  GLUI  لأني لا اريد تغير أو التعديل في الكود؟   أو على الأقل هل يوجد مكتبة أخرى لتصميم   GUI   ومتوافقة مع   OpenGL   وتدعم العربي ؟    وشكرا  
  9. السلام عليكم    تحية طيبة لجميع أعضاء هذا المنتدى    أنا عندي مشكلة وأتمنى مساعدتي فيها   كيف يمكن ظهور نص عربي على button  , check box  أو أي اداة بواسطة استخدام مكتبة  GLUI   أنا كتبت كود ببرنامج Visual C++  وتم استخدام كلا من GLUT  و ايضا مكتبة  GLUI  لعمل  button, and check  box   عند كتابة نص عربي على button  مثلا (موافق)  لا يظهر النص أثناء تشغيل البرنامج أما عند كتابة نص انجليزي فيظهر   هل GLUI  لا تدعم العربي   وما هي اقتراحاتك لحل هذه المشكلة؟    
  10. السلام عليكم ورحمة الله وبركاته  بدأت بتعلم هذه اللغة الجميلة ولكن يحيرني دائما اهمية ال console هل هو ياترى ضروري لتعلمه وما هي استخداماته   
  11. لعبة كانسة الألغام عل كونسول إذا حدا حابب يستفاد بليرة   شاركونا آراءكم   جميع الدوال المستخدمة من مكتبة Windows.h OmarsMineSweeper.rar
  12. إستخدام الألوان داخل console

    الكود الموجود هنا جزء من مكتبة  MathX مع بعض التعديلات   الألوان داخل الـ console لها إستخدامات عديدة مثل التفرقة بين الرسائل العادية و رسائل الخطأ و التحذيرات ... إلخ و مثال على هذا مترجم clang، أيضا يمكنك استخدامهم للتسلية.   نظام Windows   داخل windows توجد وسيلة واحدة لتلوين محتويات الـ console و ذلك عن طريق استخدام الأمر color بتمريره للدالة system :) ... أنا اضحك معك، هذه الوسيلة غير فعالة حيث انها تقوم بتلوين كافة الـ console و ليس اجزاء معينة و بالتالي الوسيلة الوحيدة لدينا هي بإستخدام windows API: extern "C"{ struct CSBI { unsigned long long whatever; unsigned short attributes; unsigned long long window; unsigned max_window_size; }; void* __stdcall GetStdHandle(unsigned hStd); bool __stdcall GetConsoleScreenBufferInfo(void* hConsoleOutput, CSBI* lpCSBI); bool __stdcall SetConsoleTextAttribute(void* hConsoleOutput, unsigned short wAttributes);}إذا استخدمت windows API من قبل فستعلم بكل تأكيد ان الطريقة التى استخدمها هنا ليست الطريقة المثلي و سبب إستخدامي لها هو عدم رغبتي بإستخدام windows.h لتسريع عملية ترجمة المشروع. (ليس هذا المشروع و لكن المشروع الذى أتي منه هذا الكود).   دوال الـ API المستخدمه هنا متاحة بدءا من نظام تشغيل windows 2000 وحيث ان نظام التشغيل هو ويندوز فسأفترض ان مكتبة Kernel32 تم الربط عليها. التركيب CSBI هو CONSOLE_SCREEN_BUFFER_INFO مع بعض التعديلات. الدالة GetStdHandle استخدمها للحصول على handle للـ standard output stream و التى يتم الكتابة داخلها من داخل لغة ++c عن طريق cout. الدالة GetConsoleScreenBufferInfo أستخدمها للحصول على الألوان الإفتراضية الخاصة بالـ console عندما يفتح أول مره حتى أستطيع من خلالهم عمل reset للألوان. الدالة SetConsoleTextAttribute استخدمها كي اقوم بتحديد اللون الذى اريده لمخرجات الـ console. المعامل wAttributes الموجود بالدالة SetConsoleTextAttribute هو الذى نحتاج إليه و إليك توثيق ايسر قليلا مما لدي ميكروسوفت: البت الأول يمثل اللون الأزرق، البت الثاني يمثل اللون الأخضر، البت الثالث يمثل اللون الأحمر، البت الرابع يمثل حدة اللون فواحد يصبح اللون حاد و صفر على حالته الطبيعية. الأربع بتات فى حالتهم الأن يغيروا من لون الخط فإن أردت منهم تغيير لون الخلفيه فقم يتحريكهم لليمين بقدر اربع بتات (بمعنى ان قيمة اول 4 بتات تماثل قيمة ثاني اربع بتات و المجموعة الأولي للون الخط و الثانية للون الخلفيه). بتات الألوان مجتمعه تمثل 8 ألوان و هم: +--------+-------+------+-------+------+-----+---------+--------+-------+| id | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |+--------+-------+------+-------+------+-----+---------+--------+-------+| name | Black | Blue | Green | Cyan | Red | Magenta | Yellow | White |+--------+-------+------+-------+------+-----+---------+--------+-------+| name2 | أبيض | أصفر | إرجواني | أحمر | سماوي | أخضر | أزرق | أسود |+--------+-------+------+-------+------+-----+---------+--------+-------+  أنظمة أخرى   داخل أنظمة التشغيل الأخرى أغلب الـ terminals تستخدم ANSI colors و هي عبارة عن نص يحتوى على قيمة رقمية تمثل العملية التى تريد القيام بها، هذا النص له شكل ثابت: ESC[xxmحيث ESC هى Escape character أى '033\' أو 'x1B\' يليها القوس ']'. xx هي قيمة بالنظام العشرى تمثل العملية التى تريد القيام بها و هي فى حالتنا هذه ستكون إما لتغيير لون الخط أو الخلفيه او لتغيير حدة اللون. الحرف m ليدل على انتهاء سلسلة الأمر.   ما يهمنا هو قيمة الألوان و هي: +--------+-------+-----+-------+--------+------+---------+------+-------+| id | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |+--------+-------+-----+-------+--------+------+---------+------+-------+| name | Black | Red | Green | Yellow | Blue | Magenta | Cyan | White |+--------+-------+-----+-------+--------+------+---------+------+-------+لقيمة لون الخط قم بإضافة 30 على قيمة اللون و لقيمة لون الخلفية قم بإضافة 40 على قيمة اللون. لجعل اللون فاتح استخدم الرقم 1. لإعادة اللون إلى حالته الطبيعية: توجد بعض القيم و لكن الشائع هو استخدام الرقم صفر لإعادة الإعدادات إلى حالتها الإفتراضية و هو ما استخدمه هنا. أنواع البيانات المشتركة فى البداية نحتاج لكتابة الكود الذى سيتم إستخدامه من خلال windows coloring و ANSI coloring.   // terminal colorsenum color{ black = 0, blue = 1, green = 2, cyan = 3, red = 4, magenta = 5, yellow = 6, white = 7};// terminal color brightenum bright{ no = 0, // use color standard bright yes = 1 // use a bright color};// location to apply color intoenum place{ front = 0, // apply to foreground back = 1 // apply to background};// terminal color classtemplate<typename type>struct ccolor_t{ // set foreground/background colors to default state inline static void reset() { type::reset(); } // set color attributes inline static void set_color(color c, bright b = no, place p = front) { type::set_color(c, b, p); }};النوع color يمثل الألوان التى يمكننا إستخدامها. النوع bright يمثل حدة اللون. النوع place يمثل المكان الذى سيتم تلوينه. النوع ccolor_t يمكنك اعتباره كجسر يقوم بإستدعاء الكود الخاص بفئة معينه هى التى تم تمريرها له من خلال المعامل type. الكود الخاص بويندوز   struct windows_cc{ inline static void reset() { pdata& p = pdata::get(); SetConsoleTextAttribute(p.handle, p.attrib); } inline static void set_color(color c, bright b, place p) { unsigned short attrib = (unsigned short)c; if (b == yes) attrib |= 0x8; if (p == back) attrib <<= 4; SetConsoleTextAttribute(pdata::get().handle, attrib); } struct pdata { void* handle; unsigned short attrib; inline pdata() { handle = GetStdHandle(unsigned(-11)); CSBI tmp; GetConsoleScreenBufferInfo(handle, &tmp); attrib = tmp.attributes; } inline static pdata& get() { static pdata data; return data; } };};الجزء الذى يحتاج للتوضيح هو الفئه pdata و التى استخدمها كحاوية للمتغيرات التى استخدمها و الدالة get بها تعيد إلي نسخة static منها. الكود الخاص بـ ANSI   struct ansi_cc{ inline static void reset() { std::cout << "\x1B[0m"; } inline static void set_color(color c, bright b, place p) { static const char* arr[] = {"\x1B[0m", "\x1B[1m"}; #define ANSI_CC(C) "\x1b[" #C "m" static const char* const colors[][8] = { { ANSI_CC(30), ANSI_CC(34), ANSI_CC(32), ANSI_CC(36), ANSI_CC(31), ANSI_CC(35), ANSI_CC(33), ANSI_CC(37) }, { ANSI_CC(40), ANSI_CC(44), ANSI_CC(42), ANSI_CC(46), ANSI_CC(41), ANSI_CC(45), ANSI_CC(43), ANSI_CC(47) } }; #undef ANSI_CC std::cout << arr[b] << colors[l][c]; }};أسئلة إضافية ماذا نفعل لو اردنا عدم استخدام الألوان؟ فى هذه الحالة فقط قم بتعريف الفئة التالية: struct no_colors{ inline static void reset() {} inline static void set_color(color, bright, place) {}};  و لكن كيف سأحدد أى تلك الفئات استخدم؟ أيضا حتى الأن ccolor_t لا يوجد لها فائدة؟   لنأخذ الأمور خطوة خطوة; لعدم إستخدام الألوان نحتاج لتعريف macro لتفيد قيمته بذلك: #define NO_COLORS 0صفر تعنى استخدم الألوان و واحد تعني لا تستخدم الألوان، لنرى كيف سيتم إستخدام كل هذه الفئات معا:   #if NO_COLORS == 1// add no_colors class defination heretypedef ccolor_t<no_colors> ccolor;#elif defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(__WINDOWS__)// add extern C section here// add windows_cc class defination heretypedef ccolor_t<windows_cc> ccolor;#else // use ANSI coloing// add ansi_cc class defination heretypedef ccolor_t<ansi_cc> ccolor;#endifالأن الكود جاهز للإستخدام الأن و إليك مثال: #include <iostream>using std::cout;int main(){ cout << "this is a default terminal color.\n"; ccolor::set_color(green, yes, front); cout << "this is a foreground green color.\n"; ccolor::reset(); ccolor::set_color(green, yes, back); cout << "this is a background green color.\n"; ccolor::reset(); cout << "this is a default terminal color.\n";}المفترض ان يتم طبع النصوص لديك بالألوان.     بعض العمليات الأخرى   مع العلم ان ccolor يعمل بشكل جيد لكن الن يصبح الأمر أفضل إذا كتب المثال السابق كالتالي: #include <iostream>using std::cout;int main(){ cout << "this is a default terminal color.\n"; cout << foreground(green, yes) << "this is a foreground green color.\n"; cout << reset_color << background(green, yes) << "this is a background green color.\n"; cout << reset_color << "this is a default terminal color.\n";}فى هذا الجزء سنتطرق لكتابة iostream manipulators لجعل تنفيذ هذا المثال متاحا. لكتابة mainpulator أولي (مثل endl) يكون كالتالي: ostream& new_line(ostream& stm){ stm << '\n'; return stm;}و يتم إستدعائه كالتالي: cout << new_line;و فى حالتنا هذه reset_color هو mainpulator أولي: ostream& reset_color(ostream& stm){ ccolor::reset(); return stm;}المشكله ستحدث إن اردت كتابة mainpulator له معامل أو أكثر (مثل setw, setfill) فى هذه الحالة تحتاج لكتابة فئة وسيطة لتعمل كجسر بين المعامل >>operator و الـ mainpulator الخاص بك، مثال: struct ccolor_info{ color c; bright b; place p; ccolor_info(color cc, bright bb, place pp) : c(cc), b(bb), p(pp) {}};ostream& operator << (ostream& stm, const ccolor_info& ci){ ccolor::set_color(ci.c, ci.b, ci.p); return stm;}ccolor_info foreground(color c, bright b){ return ccolor_info(c, b, front);}ccolor_info background(color c, bright b){ return ccolor_info(c, b, back);}بهذه الـ mainpulators يمكن تنفيذ المثال السابق.   ccolor.zip example_1.zip example_2.zip     و الله ولي التوفيق
  13. مواضيع متنوعة حول الفيجوال بيسك دوت نت   استخدامات متقدمه للماوسConsole Applicationبرنامج البحث عن الملفات في جهازككيف يمكنك تعداد تكرار كلمة في نص معين بواسطة ال Linqالبحث عن تعابير معينة في جملة معينة بواسطة Linqالبحث عن ملفات تبعا لإمتدادها بواسطة ال Linqنظرة على جديد الفيجوال بيسك 9 – الجزء الثانينظرة على جديد الفيجوال بيسك 9 – الجزء الأولHashSet(T)كيف اكسر حماية برنامج مكتوب بالـ .NETتقنية ال .NET Remotingشرح خوارزمية ال Bubble Sortقنص الأخطاء و طرق التخلص منها – Exceptions Handlingالمعامل IsNotال Using Instructionال Global InstructionXML Commentsال Partial Classال Genericsالمعامل TryCastالإختصار MYMake Data Types NullableEncrypt Secrets for the Current UserADO.NET مقدمة لاهم كائناتهامكتبة للتحكم بال Nintendo’s WiimoteVisual Basic TVجرب قدراتك البرمجية مع مايكرسفتلغة XAMLال WinFX و ال Avalonوضع أسماء الالوان المتاحة في كومبوبوكسعمل خاصية Nudge كالتي في المسنجر!لفرق بين ByRef و ByValاستعمال كلمة محجوزة كمتغيرGets Installed Printers In your Computerاستخدام الكلمة المحجوزة withFlash Window – عمل اضاءة لبرنامجك في TaskBarرسم شكل هندسيعمل Drag&Dropالتعامل مع ال ProcessThreading and the Asynchronous Pattern in VB.NETكيفية ايقاف و الخروج من الويندوزتنفيذ أوامر Dos في برنامجك و إظهار النتائج فيهانشاء Button ذات Design خاص بك بواسطة برنامج Ms Blendمن MS Expression Design الى MS Expression Blend – الجزء الأMake some effects to images with VB.NETManaging text files with vb.netشرح الحصول على ip address من ال HostNameWebServices in Visual Basic.NET Part 2 (Arabic)WebServices in Visual Basic.NET Part 1 (Arabic)الوراثة في الفيجوال بيسك دوت نت – الجزء الثانيالوراثة في الفيجوال بيسك دوت نت – الجزء الأولاستخدام ال Crystal Report مع الفيجوال بيسك دوت نتمقدمة لبرنامج Microsoft Expression Blendخطوة بخطوة في التعامل مع الملفات و المجلداتالتعامل مع الملفات (قراءة،كتابة،،،)إستخلاص معلومات حول ملف معينCompress/Decompress Filesإستخراج ال Tags من ملف MP3اجعل جهازك يعمل شيئا من أجلك.التعامل مع ال Stringأساسيات البرمجة – مقدمة عامةالمصفوفات – Arraysالمتغيراتالحلقة التكرارية For … Nextبدايات البرمجة – الأساسياتما هي خاصية IsMdiContainer وكيف تعملخوارزمية ال Bubble SortUsing CodeDomالحلقة التكرارية For … Next 
  14. السلام عليكم مقارنة مع خصائص الجافا وامكانية compile & execute كود بلغة الجافا عن طريق طبعا الـ JVM ، يا ترى هل من الممكن تنفيذ كود بالسي بدون استعمال الـ IDE ؟ في نظام الويندوز !!    
  15. السلام عليكم احب استفسر عن الكود الذي نضعه مع الكود ليصبح الكلام في شاشة run ملونا ً