كيف تصنع الدوال؟؟ وكيف صنعت مايكروسوفت Form و textbox وغيرها من الادوات :D
هل يمكن صنعها بال ++C ??? :)
كيف؟؟؟ :D
كيف تصنع الدوال؟؟ وكيف صنعت مايكروسوفت Form و textbox وغيرها من الادوات :D
هل يمكن صنعها بال ++C ??? :)
كيف؟؟؟ :D
قمت بالرد على مثل هذا الموضوع سابقا :
المشكلة ليست فى اللغة بل يمكنك من لغة البسكال تصميم ادوات اكس بى المهم انك تعرف كيفية استخدام دوال النظام
اما عن كيف تم تصميم ادوات النظام
من لغة السى ويمكن من لغة البسكال ولكن بأ ستخدام خدمات المعالج
hamada hassan ali كتب:عزيزىsemsem0737ما رايك انت ترى الويندوز وهو ذات الواجهة المرئية هل تعلم ان كل هذا تم كتابتها بلغة السى والاسمبلى
ولكن استخدام الاسمبلى لكى يتم التعامل المباشر مع الجهاز كمثل نقل البيانات والتحكم فى اجزاء فى الهارد والللوحة الام عموما
اما السى كانت تستخدم لتبسيط المهمة وهى استخدمها فى كتابه الجرافيك وبعض المناطق الخاصة بادارة البيانات والذاكرة
-----------------------------------------------------------------
لا تنظر الى السى وهى برامج الكونسل انظر الى فيجوال ستديو والفيجوال بيسك فهو يدعم الواجهة هل تعرف ان لغة الفيجوال بيسك
والفيجوال سى ++ 6 تم تصميمهم بلغة السى والسى ++ القياسية
ولكن اعرف ستقول كيف وهى تعمل برامج كونسل ؟
اولا يا عزيزى عندما تختار البرمجة بلغة السى فانك تحدد نوع المشروع اذا كان كونسل هذا معناه انك ستعمل فى النظام غير المحمى وهو نظام 16 بت اى ان ( سعة المسجل cx -- bx -- ax تكون 16 بت )
اما معالجات 32 بت فهى تدعم خدمة الواجهة والالوان انظر الى اى برنامج او لعبة على بيئة 16 بت سترى انها تقتصر على 15 الى 256 لون فقط
اما انظر الى الالعاب الذى تشعر وكأنك فى عالم واقعى ذات ابعاد سداسية وليس ثلاثى الابعاد فهذه هى السى ايضا ولكنها تستخدم خدمات المعالج 32 بت
الان المعالجات انواع 16 بت وهو الذى انت تقول عليه ان الدوس انقرض
اما معالجات 32 بت وهى معالجات تدعم خدمات الرسومات فتحتوى على 16 مليون لون وهو ما تراه امامك من الوان الايقونات السحرية المجسمة
اعرف انك ستقول لى كيف يتم استخدام السى فى بناء برامج ذات واجهة وليس الكونسل
عندما يتم تصميم نظام التشغيل فهو مكون من عناصر :
محرر ادوات كامل به :
list box
form
dialog box
وهى تعتمد على مبداء الوراثة بمعنى تم تصميم نظام تشغيل به خدمات كمثل فتح اتصال بينك وبين النت
يتم عمل نسخة من هذه الدالة داخل مكتبة تسمى مكتبة خدمات النظام API
وهى تمكنك من تصميم برامج تدعم واجهة النظام وامكانياته والخدمات التى يوديها المعالج
بناء برامج كونسل فانك تستخدم خدمات على حدود 16 بت لا اكتر
اذا كنت تنوى بناء برامج تدعم الواجهة الرسومية والامكانيات والتحكم فعليك استخدم مكتبة دوال API مع لغة السى وللعلم مكتبه خدمات النظام مكتوبة ايضاوتم تصميمها بلغة السى عارف ليه لان النظام XP -- ME -- 98 -- 95 2000 تم كتابتهم بلغة السى ايضا
هل اقتنعت الان بلغة السى
لديك اداة محرر نص textbox تم تصميمها من اكواد الخاصة بالالوان بالمعالج اى كان نوعه 16 او 32 بت
اما النظام يسهل عليك تصميم الاداة فما عليك هو استدعائها فقط وسيقوم النظام بعمل نسخة من الدالة وتمريرها الى برنامجك
اعتقد انك فهمت ان التصنيع غير الاستخدام بمعنى
يمكنك تصميم ادوات تك الخاصة بك ولكن تتطلب منك معرفة جيدة بخدمات المعالج والوصول لها والتحكم فى نظام العرض على الشاشة والخدمات الذى توديها وهذا يتم تصميمه اثناء بناء وكتابة نظام التشغيل
تخيل لو لم يكن النظام يوفر لك هذه الخدمات api سوف تقوم انت بتصنيعها ثم اتعامل معها فى مرحلة الاستخدام
تم تعديل هذه المشاركة بواسطة hamada hassan ali في 7 أكتوبر 2005 في 23:28
_____________________________
C Language && Windwos_API
_____________________________
ماذا تقصد بكيف يتم انشاء الدوال؟ هل تقصد ماذا يحدث عندما يقوم الكومبايلر بترجمتها الى لغة الالة مثلا؟ ام تقصد بالدوال الـ win32 api؟
فيما يتعلق بالدوات المرئية .. فهذه مشكلة لها جانبين: اولا جانب الرسم (كيف ترسم العنصر على الشاشة) ..
و المشكلة الثانية هي متابعة حالة العنصر ... مثلا في حالة مربع النصوص, لازم تتابع اين هو مكان المؤشر و ما هو النص المكتوب حاليا .. و اذا كان هناك عدة اسطر لازم تتعامل مع كيف ستضع الكلات في الاسطر .. الخ.
خلي نبسط المسألة:
اكتب برنامج بالدايركت اكس او اي مكتبة تخليك ترسم الصور مباشرة ..
خلي برنامج full screen و خلى لون الشاشة كلها لون واحد (ازرق مثلا .. او اي شي)
احضر صورتين .. واحد للز و هو مضغوط, و الاخر للزر في وضعه العادي.
ارسم صورة للزر و هو في وضعه العادي.
قم بمراقبة حركة الماوس, و كلما يقوم المستخدم بضغط زر الماوس, قم بالتأكد من هل كان الماوس فوق صورة الزر ام لا؟ فإذا كان فوق صورة الزر, استبدل صورة الزر بصورة الزر المضغوط, و اذا لم يكن كذلك .. فاترك صورة الزر كما هو. طبعا لو حولت الصورة الى زر مضغوط, لازم بعدهاترجع الصورة الى الزر العادي عندما يقوم المستخدم بازالة الضغط من زر الماوس.
بإمكانك ان لا يقوم البرنامج بشيء سوى هذه المهمة: يعني مراقبة حركة الماوس, و القيام بتبديل صورة الزر بصورته و هو مضغوط عندما يضغط الماوس عليه.
هذا الموضوع مغلق.