مقـدمة في واجهـة برمجة التطبيقات Windows API


أن البرمجة يتقنية API ليست قاصرة عـلى Visual Basic فقط ، حيث يمكن استخدامها مع لغات برمجة أخرى مثل ++C ولاكن بشكل مختلف قليلا في طريقة أستدعائها ، وكلمة API هي أختصار للعبارة Application Programming Interface وترجمتها " واجهة برمجة التطبيقات " ، وهي عبارة عن مجموعة من الدوال التي يكثر استخدامها من قبل كثير من البرنامج التى تعمل مع الويندوز ، وبدا ل من ان يقوم كل مبرمج بكتابة عدة اسطر داخل برنامجة لقيام بمهمة تتكرر مع كثير من البرنامج بما فيها كثير من برامج Windoes تم وضع هذة الدوال الجاهزة داخل ملفات ديناميكية DLLS .

كيف تستخدم إجراءات واجهة البرمجة :
عندما تستخدم أي من أوامر Visual Basic فانت تفعل ذلك مباشرة ، وتمرر للأمر ما يحتاج من متغيرات مثلا الأمر Line يمكنك استخدامة مباشرة كالتالي :

Line (10, 10)-(1500, 1500), vbRed, BF

واستخدام الإجراءات الموجودة في واجهة البرمجة يشبة إستخدام أوامر Visual Basic مع خطوة إضافية هي الإعلان عن اي جراء تود استخدامة قبل استخدامك لة ، وذلك لان تلك الإجراءات ليست جزاء Visual Basic بل هي جزء من بيئة Windows .

ألأعلان عن لإجراء ت :
هناك برنامج ياتي مع Visual Basic يسمى API Text Viewer تجدة ضمن المجوعة البرمجية الخاصة بـ Visual Basic يحتوي على الإعلانات الخاصة بكثير من إجراءت واجهة البرمجة ، قم بتشغيلة الأن ثم أختر File ثم Load Text File ، سيظهر صندوق حوار ليس بغريب عليك أختر الملف Win32api.txt من تحت المسار vb\winapi\... وهذا الملف يحوي كثيرا من ألإجراءات .
كما يمكنك تشغيل البرنامج من داخل Visual Basic بشرط أن تكون منتقاة ، ويمكنك أنتقائها من داخل برنامج Visual Basic بأختيارك لـ Add-Ins ثم Add-In Manager ثم من داخل صندوق الحوار أنتقي VB API Viewer . عند ذلك يمكنك تشغيلها مباشرة من بإختيار Add-Ins ثم API Viewer .

وأجزاء هذا البرنامج كالتالي :
API Type : من هذة القائمة المنسدلة يمكنك الأختيار بين ( قائمة الثوابت Constants ) أو ( أسماء الإجراءات Declares ) أو ( تعريف المتغيرات Types ) .
ِ
Available Items : هنا وعند أختيارك لـ ( أسماء الإجراءات Declares ) من القائمة المنسدلة API Type ستجد أسماء الإجراءت المتاحة لتختار منها الإجراء الذي تريد التعرف على الطريقة الصحيحة للإعلان عن أجراء ما .
Selected Items : هنا ستظهر لك الطريقة الصحيحة للإعلان عن الإجراء الذي أخترة بالنقر علية نقرا مزدوجا ، أو بالإشارة الية ثم النقر على الزر Add .
Searth : هذا الزر يمكنك من البحث ضمن Available Items عن أسماء الإجراءات أو الثوابت او المتغيرات ولو بجزء من اسمها ، وهذا يعني انة ليس عليك حفظ اسم الإجراء بالكامل فالبعض منها طويل جدا .
Add : هذا الزر سيظهر الطريقة الصحيحة للإعلان عن الإجراء المنتقي من Available Items في Selected Items .
Remove : لإزالة ما تنقية أنت من القائمة Selected Items .
Copy : لنسخ الجزء المعلم من القائمة Selected Items ، أو نسخ كل ما بها أن لم تعلم جزء محدداً .

أين تضع الإعلان عن ألإجراءات :
عند حصولك على الطريقة الصحيحة للإعلان عن الإجراء ونسخة ، يبقى السوال اين يجب وضعة داخل البرنامج فلنفرض ان لدينا اجراء ما فإين نضعة

ـ إذا كنت تريد استخدام الإجراء في أكثر من نافذة في البرنامج فيجب عليك أن تكتبة أو تلصقة في قسم الإعلانات في ملف برمجة Module كما بالشكل المجاور.
ـ لإضافة ملف برمجة لمشروعك أختر من قائمة برنامج Visual Basic اختر Project ثم اختر AddModule .
ملاحظة : يمكنك أضافة الأعلان في اماكن أخرى ولاكن هذا الموضع هو افضلها .
أنقر على الإيقونة لتحميل مثال بسيط أرجو أن يساعدك على فهم المقصود .

الآن وبعـد أن اضفت الإعلان عن الإجراء فبإمكانك استخادمة متى شئت لنرى الصيغـتين العامة للإعلان عن الإجراءات :

[Public | Private] Declare Sub name Lib "libname" [Alias "aliasname"] [([arglist])]
[Public | Private] Declare Function name Lib "libname" [Alias "aliasname"] [([arglist])] [As type]

ـ تعني أن الإجراء يمكن استخدامة في أي مكان داخل مشروعك
ـ تعني أن الإجراء لايمكن استخدامة إلا ضمن الإطار أو ملف البرمجة الذي يحتوي الإعلان عن الإجراء

أو Public Private

ـ وهي خاصة بالإعلان عن الإجراءات الخارجية ، ستجدها دائما ضمن أي أعلان لإي إجراء

Declare

ـ وهي تشير إلى أن الإجراء سيعود بقيمة لبرنامجك ويجب عليك أن تستقبل تلك القيمة في متغير
ـ تشير إلى أن الإجراء لن يعود لك بقيمة لك بعد أن ينتهي
أو Function Sub

ـ أسم الإجراء المستخدم

name

وهي إختصار لـ Library وياتي بعدها اسم المكتبة التي بها الإجراء .

Lib

اسم المكتبة التي بها الإجراء مثل User32 وهي من مكتبات ويندوز المشهورة .

"libname"

ـ ياتي بعدها الإسم المستعار للإجراء

Alias

ـ الأسم المستعار للإجراء

"aliasname"

ـ مجموعة المتغيرات المطلوبة من قبل الإجراء ملحق بكل متغير نوعة

arglist

ـ توضح لك نوع القيمة التي يعود بها الإجراء في حال كونة يعود بإجراء

As type