يمكن تحقيق الرسوم المتحركة بسهولة باستخدام عناصر تحكم الصورة والمؤقت في Visual Basic. ستقدم هذه المقالة المبادئ الأساسية لبرمجة الرسوم المتحركة باستخدام Visual Basic وتقنيات البرمجة لتحقيق ثلاثة أنواع مختلفة من الرسوم المتحركة.
1. المبادئ الأساسية
---- الرسوم المتحركة هي محاكاة للحركة، ويتم تحقيقها من خلال العرض السريع لمجموعة من الصور ذات الصلة على الشاشة. ولذلك فإن أساس تحقيق الرسوم المتحركة هو عرض الصور والحركة أو التغيير السريع والمنتظم للصور.----في Visual Basic، استخدم وظيفة LoadPicture لتحميل ملفات الصور بتنسيقات BMP وICO وWMF في الذاكرة، وقم بتعيين قيمة إرجاع الوظيفة إلى خاصية الصورة لكائن الصورة لعرض الصورة في كائن الصورة. هناك ثلاث طرق أساسية لجعل الصور تتحرك أو تتغير وهي:
---- تحدد الخاصية Enabled لكائن Timer ما إذا كان حدث Timer صالحًا أم لا. سيؤدي تعيين الخاصية Enabled على True إلى بدء حدث Timer (مثل بدء الحركة المتحركة)؛ وسيؤدي تعيين القيمة False إلى إبطال حدث Timer (مثل إيقاف الحركة المتحركة).
2. الرسوم المتحركة بلا حراك
---- الرسوم المتحركة بدون موضع تعني أن الكائن المتحرك لا يتحرك، لكن الصورة تتغير باستمرار. والمثال النموذجي هو قلب الكتاب. تتمثل طريقة تحقيق الرسوم المتحركة الخالية من الحركة في إعداد كائن الصورة وكائن المؤقت، واستدعاء وظيفة LoadPicture أثناء حدث Timer لتحميل صور مختلفة، وتعيين سمة الصورة لكائن الصورة لعرض صور مختلفة في الكائن، وذلك هو تنفيذ تغييرات الصورة.----ما يلي هو مثال للرسوم المتحركة لكتاب الوجه. عندما يبدأ البرنامج، يتم عرض كتاب مفتوح في النموذج. انقر فوق الكتاب بزر الماوس الأيسر لبدء تقليب الكتاب؛ انقر فوق الكتاب بزر الماوس الأيسر مرة أخرى لإيقاف تقليب الكتاب. تمثل ملفات الصور النقطية book1.bmp~book4.bmp على التوالي مواضع مختلفة للصفحة التي يتم قلبها عند قلب الكتاب، ويتم تخزينها في الدليل الذي يوجد به المشروع الحالي.
----قم بتعيين كائن الصورة Image1 وكائن Timer Timer1 في النموذج (Form1) الذي يحتاج إلى عرض الرسوم المتحركة، وقم بتعيين خصائصهما كما هو موضح في الجدول التالي. استخدم القيم الافتراضية للخصائص غير المدرجة.
.
.
.
3. الرسوم المتحركة لإزاحة الإطار الواحد
---- تشير الرسوم المتحركة لإزاحة الإطار الواحد إلى الرسوم المتحركة التي يتم تشكيلها عن طريق تغيير موضع الصورة نفسها باستمرار، ومن الأمثلة النموذجية على ذلك عندما تهب الرياح على السحب. تتمثل طريقة برمجة الرسوم المتحركة لإزاحة الإطار الواحد في استدعاء طريقة النقل لكائن الصورة أثناء حدث Timer لتحريك الصورة.---- فيما يلي مثال على حركة السحابة. عندما يبدأ البرنامج، يتم عرض سحابة في النموذج. انقر فوق السحابة بالزر الأيسر للماوس، وستبدأ السحابة في الرفرفة. إذا لمست حدود النموذج، ستغير السحابة اتجاه حركتها؛ انقر فوق السحابة بالزر الأيسر للماوس مرة أخرى، وستبدأ السحابة في التحرك. يتم تخزين ملف الصورة النقطية cloud.bmp في الدليل الذي يوجد به المشروع الحالي.
----قم بتعيين كائن الصورة Image1 وكائن Timer Timer1 في النموذج (Form1) الذي يحتاج إلى عرض الرسوم المتحركة، وقم بتعيين خصائصهما كما هو موضح في الجدول التالي. استخدم القيم الافتراضية للخصائص غير المدرجة.
.
.
.
----لاحظ أنه عندما تصطدم السحب بالحدود وتتحرك في الاتجاه المعاكس، يتم تحقيق ذلك عن طريق تغيير إشارات DetaX وDetaY.4. الرسوم المتحركة للإزاحة متعددة الإطارات
---- الرسوم المتحركة متعددة الإطارات هي الرسوم المتحركة الأكثر تعقيدًا، والتي تجمع بين خصائص الرسوم المتحركة غير الإزاحة والرسوم المتحركة ذات الإطار الواحد. تتميز معظم الحركات في الطبيعة بخصائص الإزاحة المتعددة الإطارات، مثل طيران الطائر. وبينما يتحرك الطائر، ترفرف أجنحته أيضًا. لتنفيذ رسوم متحركة للإزاحة متعددة الإطارات، يجب معالجة استبدال الصورة وحركة موضع كائن الصورة في وقت واحد أثناء عملية حدث المؤقت.----ما يلي هو مثال على طيران الطائر. عندما يبدأ البرنامج، يتم عرض طائر في النموذج. انقر فوقه بزر الفأرة الأيسر، وسيبدأ الطائر في رفرفة جناحيه. إذا وصل إلى حدود النموذج، سيغير الطائر اتجاه طيرانه انقر على زر الفأرة الأيسر مرة أخرى وسيتوقف الطائر عن الطيران. تمثل ملفات الصور النقطية Bird1.bmp~bird4.bmp على التوالي المواضع المختلفة لأجنحة الطائر عندما يطير، ويتم تخزينها في الدليل الذي يوجد به المشروع الحالي.
----قم بتعيين كائن الصورة Image1 وكائن Timer Timer1 في النموذج (Form1) الذي يحتاج إلى عرض الرسوم المتحركة، وقم بتعيين خصائصهما كما هو موضح في الجدول التالي. استخدم القيم الافتراضية للخصائص غير المدرجة.
.
.
.
5. تكبير الرسوم المتحركة
---- يعد تضخم البالون أو انكماشه مثالًا كلاسيكيًا للرسوم المتحركة ذات التكبير/التصغير. يمكن تنفيذ الرسوم المتحركة للتكبير/التصغير عن طريق تعديل خصائص العرض و/أو الارتفاع لكائن الصورة أثناء حدث المؤقت. ولكن إذا كنت تريد إظهار المقياس المتحد المركز للكائن، فيجب عليك أيضًا تحريك كائن الصورة في نفس الوقت.----ما يلي هو مثال لمحاكاة تحجيم البالون في الهواء (متحدة المركز). عندما يبدأ البرنامج، يتم عرض بالون في النموذج. انقر فوقه بزر الفأرة الأيسر، وسيبدأ البالون في التوسع إذا وصل إلى حدود النموذج، فسوف يتقلص البالون إلى حجمه الأصلي ، سيتم توسيعه مرة أخرى، ثم انقر فوق زر الماوس الأيسر على البالون، وسيتوقف البالون عن القياس. يتم تخزين ملف الصورة النقطية Balloon.bmp في الدليل حيث يوجد المشروع الحالي.
----قم بتعيين كائن الصورة Image1 وكائن Timer Timer1 في النموذج (Form1) الذي يحتاج إلى عرض الرسوم المتحركة، وقم بتعيين خصائصهما كما هو موضح في الجدول التالي. استخدم القيم الافتراضية للخصائص غير المدرجة.
هدف
ملكية
تعيين القيمة
الصورة1
صورة
...(المسار إلى ملف المشروع)/Balloon.bmp
.
.
.
->