Actionscript : خلق المعاد استخدامها المدونه
اردت القيام بسلسله من الاجراءات في اوقات مختلفة دون تكرار المدونه دون داع طوال الفيلم الخاص بك. ايجاد وظيفة ثم الكلمه (أي ، في الاحتجاج) وهي بالاسم كلما كنت بحاجة لتنفيذ تلك الاجراءات. وهناك اكثر من طريقة لإيجاد (اي تحديد او اعلان) دالة. هنا هو كيفية ايجاد اسم الوظيفة : الوظيفة functionname () (/ / البيانات الذهاب هنا. الدعوة الى) (أي تنفيذ) المدعو وظيفة ، وتشير الى انها بالاسم ، مثل : Functionname () ؛ هنا هو كيفية ايجاد وظيفة الحرفي : Functionname = الوظيفة () (/ / البيانات الذهاب هنا. ) ؛ ورغم ان لا تقتضيه ، وهو يعتبر من افضل الممارسات لتشمل فاصله منقوطه بعد اغلاق رقيقة الدعامه عند تعريف دالة الحرفي. تجميع البيانات الى وظيفة تتيح لك تحديد وظيفة ولكن بمجرد تنفيذها على النحو مرات عديدة بقدر ما تريد. وهذا امر مفيد عندما كنت بحاجة الى القيام بأعمال مماثلة في اوقات مختلفة دون تكرار نفس القانون في اماكن متعددة. حفظ الشفره في وظائف مركزية تجعل من الاسهل ان نفهم (لأن يمكنك ان تكتب مرة واحدة وظيفة ثم تجاهل التفاصيل انه عند استخدام) واسهل في الصيانة (لأن يمكنك اجراء تغييرات في مكان واحد وليس في أماكن متعددة). وهناك اثنان طرق مشتركة للتعريف بمهام actionscript : ما اسم وظيفة او وظائف الاخطاء المطبعيه (الملقب غفل المهام). كل من هذه الطرق من الاعلان عن وظيفة لديها قناعاتها استخدام. المسم وظيفة الاعلان هو الاكثر شيوعا الاختيار (عند عدم تحديد وظيفة لاستخدامها كوسيله من وسائل (واحد على الاقل ميزة على وظيفة الاخطاء المطبعيه : اسمه وظائف متاحة داخل بأسره keyframe (او على onclipevent () او () المعالج (حتى اذا جاؤوا بعد الدعوة الى الوظيفة. على سبيل المثال ، على الرغم من وظيفة writemessage () الذي لم يعلن عنه حتى بعد ان يتم الاحتجاج ، وظيفة لا تزال متاحة : / / تحتج writemessage () وظيفة ، هو الذي اعلن في وقت لاحق في الكتابة. Writemessage () ؛ / / تعلن (تعريف) writemessage () وظيفة ما ويكون صادرا عن وظيفة. الوظيفة writemessage () (تعقب ( "مرحبا ، صديق".) ؛) / / وظيفة متاحة قبل او بعد ان تكون قد أعلنت. Writemessage () ؛ وفي المقابل ، دالة الحرفي هو الوصول اليها الا من خطوط المدونه التي تأتي بعد الاعلان : / / Actionscript المترجم لن تكون قادرة على ايجاد وظيفة بهذا الاسم ، / / وذلك لا يحدث شيء (انه يفشل في صمت). Writemessage2 () ؛ / / تعلن (تعريف) writemessage2 () وظيفة كما مجهولة الوظيفة الحرفي writemessage2 = الوظيفة () (تعقب ( "مرحبا ، صديق".) ؛) ؛ / / ومع ذلك ، فإن وظيفة يمكن الحصول عليه من خطوط للقانون بعد ان تكون قد أعلنت. Writemessage2 () ؛ ومع ذلك ، هناك اسباب عديدة لاستخدام وظيفة الاخطاء المطبعيه : يمكنك اسناد مهمة الحرفي لعالمى متغير حتى ان وظيفة يمكن الحصول عليها من اى جدول زمنى. وظيفة مريحه لعرض الاخطاء المطبعيه ، الميثاق ، وسهولة وبطريقة تحدد طرق بالنسبة للأجسام. الاخطاء المطبعيه وظيفة يمكن ان تعامل مثل غيرها من المتغيرات ، في انها يمكن ان تكون مرت على وظائف اخرى او قد قيمهم غير المستغله. هنا ، ونحن اسناد مهمة الحرفي باعتبارها ملكا لل_global وجوه : _ Global.launchbookexamples = الوظيفة () (الفلاش ( "http://www.person13.com/ascb" ، "_blank") ؛) ؛ \ لذلك ، من أي مكان على اي جدول زمني ، يمكنك تنفيذ المهمة ببساطة عن طريق استخدام اسمها. على سبيل المثال ، قد ارفق لكم هذا البرنامج النصي على زر : Mybutton.onrelease = الوظيفة () (launchbookexamples () ؛) ؛ هنا ، علينا تحديد وظيفة كوسيله من وسائل السينما كليب) حيث onenterframe () هو خاص ، المدمج في الفيلم لقطات لطريقة انك بحاجة الى تعريف قبل ان يمكن استخدامها) : Myclip_mc.onenterframe = الوظيفة () (تعقب ( "الصيحه لاساليب!") ؛) ؛ طبعا ، يمكنك تحديد اساليب العرف كذلك ببساطة عن طريق اسناد وظيفة جديدة الحرفي لممتلكات من وجوه : Myclip_mc.mycustommethod = الوظيفة () (تعقب ( "الصيحه لاساليب!") ؛) ؛ ومن الجدير بالذكر ايضا انه يمكنك ان تحدد طريقة واحدة متساويه لاتباع طريقة اخرى. وهذا الأسلوب كثيرا ما يستخدم لاسناد الاعمال نفسها الى السينما كليب او زر لاثنين من الاحداث المختلفة. يمكنك تحديد مجهول واسناد المهمة لأنها واحدة من اساليب الحدث المعالج ، وبعد ذلك ببساطة يقوم على حدث واحد المعالج الى طريقة اخرى. مشترك ومن الامثله على ذلك عندما تريد ان تحدد لنفسها لاجراءات عندما يقوم مستخدم الاصدارات زر او فيلم كليب وعندما الافراج خارج : / / تعريف onrelease () طريقة السينما كليب. Mymovieclip.onrelease = الوظيفة () (تعقب ( "الصيحه لاساليب!") ؛) ؛ / / اسناد نفس طريقة تعريف لonreleaseoutside () طريقة كذلك. Mymovieclip.onreleaseoutside = mymovieclip.onrelease ؛ مهام ويمكن ايضا تمرير البيانات. يمكنك مريح تمرير دالة الحرفي الى وظيفة اخرى تتطلب ان تعمل بوصفها واحدة من طروحاته ، مثل setinterval () او () array.sort الطريقة : / / تحدد الفترة التى تدعو دالة على ان الزيادات متغير ، الاول ، ويعرض / / قيمة. Setinterval (وظيفة)) (تعقب (+ + ط) ؛) ، 1000) ؛ وظائف تخضع لنفس القيود كما نطاق المتغيرات. الجدول الزمني وظائف متاحة فقط في حين ان الحد الزمني الأقصى على انها هي التي تحدد وجود. جدول زمني وظيفة يمكن ان يكون صادرا عن وظيفة أو مجهول بالوظيفه التي ستوكل الى جدول زمني متغير. وبالاضافة الى ذلك ، الجدول الزمني وظائف يمكن ان تسمى الا باستخدام الطريق الصحيح المستهدفة. عندما تدخل وظيفة من نفس الجدول الزمني ، ولست بحاجة الى ان تدرج المستهدف الطريق ، ولكن عندما تريد الحصول على وظيفة من زمني آخر ، انت بحاجة الى التأكد من انك توفر المسار الصحيح. / / صراحة تحتج دالة على ان يحدد الجدول الزمني الرئيسي. _ Root.myfunction () ؛ اذا كنت تستخدم وظيفة ضمن نفس الإطار الزمني فقط ، ولست بحاجة الى القلق بشان نطاق القضايا. ولكن اذا كنت تنوي استخدام وظيفة في انحاء كثيرة الزمنية ، حلين المستخدمة عموما هي : تحديد وظيفة كوسيله عالمية مهمة. اذا كنت تجعل دالة عالمية مهمة ، ويمكنك تسميتها بالاسم من أي جدول زمني في فيلم دون ان تقلق على نطاق : _ Global.myfunction = الوظيفة () (تعقب ( "الوظائف العالمية هي متعة!") ؛) ؛ تحديد كقسم (جامدة) طريقة عالمية من الدرجة. جميع المدمج في الصفوف العالمية بشكل افتراضي ، وإذا كنت تعرف احد مع الطبقة عالمي البناء ، وحتى ذلك الحين عهدك الطبقات يمكن ان تكون عالمية. هذا الاسلوب هو حقا الاختلاف عن الأولى ، ولكن مع ميزة الطبقات ان اقدم لكم طريقة لتنظيم مهامكم في محتمل بطريقة مفيدة (على سبيل المثال ، المدمج في الرياضيات من الدرجة ينظم العديد من المهام الرياضية). هذا هو مقال اضافها غابرييل سافيمبي
|
|||
|