• 0
  • مالي خلق
  • أتهاوش
  • متضايق
  • مريض
  • مستانس
  • مستغرب
  • مشتط
  • أسولف
  • مغرم
  • معصب
  • منحرج
  • آكل
  • ابكي
  • ارقص
  • اصلي
  • استهبل
  • اضحك
  • اضحك  2
  • تعجبني
  • بضبطلك
  • رايق
  • زعلان
  • عبقري
  • نايم
  • طبيعي
  • كشخة
  • النتائج 1 إلى 2 من 2

    الموضوع: درس إيقاف و تشغيل الصوت بزر واحد من نقطة التوقف بالأكشن

    1. #1
      التسجيل
      04-05-2006
      الدولة
      K . S . A
      المشاركات
      145
      المواضيع
      28
      شكر / اعجاب مشاركة

      Thumbs up درس إيقاف و تشغيل الصوت بزر واحد من نقطة التوقف بالأكشن

      بسم الله الرحمن الرحيم

      السلام عليكم

      مثل ما يقولون الكتاب واضح من عنوانه


      أولا :
      لكي نستطيع التحكم في الصوت عن طريق الأكشن يجب فتح المكتبة بالضغط على F11

      ثم الضغط بالزر الأيمن على الصوت و اختيار Linkage

      ثم في النافذة التي ستظهر نفعل الخيار Export for action script و export in first frame

      و نسمي الصوت في خانة الإسم بأي إسم من إختيارنا و ليكن مثلا al

      وهذا لكي نستطيع مناداته من لوح الأكشن بإسمه المختار هذا .

      - نحدد الفريم الأول في الشريط الزمني لساحة العمل الرئيسية ونكتب هذا الكود :


      رمز:
      كود:
      mysound = new Sound();mysound.attachSound("al");mybutton._alpha = 99;mybutton.onRelease = function() { myposition = mysound.position; mysound.onSoundComplete = function() { this.start(); }; if(mybutton._alpha < 100) { mysound.start(myposition/1000); mybutton._alpha = 100; }else if(mybutton._alpha == 100) { mysound.stop(); mybutton._alpha = 99; }}
      شرح الكود:

      دور خاصية ال alpha للزر واضح في الكود و هو للتحكم بالصوت عن طريق زر واحد
      و هناك درس آخر استعملنا فيه هذه الخاصية و هو درس تشغيل و إيقاف الحركة عن طريق زر واحد .. بطبيعة الحال توجد عدة طرق للتشغيل و الإيقاف بنفس الزر و لكننا اخترنا و احدة منها و التي هي خاصية الألفا و التي هي أبسطها على الإطلاق ..

      نأتي الآن لصلب موضوع درسنا هذا :


      رمز:
      كود:
      mybutton.onRelease = function() { myposition = mysound.position; mysound.onSoundComplete = function() { this.start(); }; if(mybutton._alpha < 100) { mysound.start(myposition/1000);
      myposition متغير يحمل كمعلومة داخله النقطة التي يوجد عندها الصوت
      حيث position هي خاصية من خصائص عنصر الصوت و تحسب بالميلي ثانية ..
      في السطر الذي بعدها حددنا للفلاش أنه عند انتهاء الصوت عليه أن يبدأ من نقطة الإنطلاق
      أي من الصفر ..
      نأتي للخاصية start :
      هذه الخاصية في شكلها العام تكتب كما يلي :

      رمز:
      كود:
      mySound.start(secondOffset, loop)
      حيث secondOffset تمثل الثانية التي سيبدأ عندها الصوت
      و loop تمثل عدد تكرار قراءة الصوت ..
      .. فمثلا لو عندنا صوت فيه دقيقة
      و وضعنا

      رمز:
      كود:
      mySound.start(30, 10)
      فإن هذا الصوت سيبدأ القراءة من نصف الدقيقة أي عند الثانية 30 و سيتكرر 10 مرات ثم يتوقف .. ( طبعا تستطيع لكي يتكرر الصوت مرات كثيرة أن تضع مثلا 999999 بدل 10 .
      طبعا هاتان الخاصيتان اختياريتان ..

      في الكود وضعنا :

      رمز:
      كود:
      mysound.start(myposition/1000)
      و بما أن 1 ثانية = 1000 ميلي ثانية

      فإننا قسمنا myposition ( التي تحسب بالميلي ثانية كما أسلفت) على 1000 و هذا حتى نحصل على secondOffset الذي نرغب في تحديده ( لأنه كما قلنا يحسب بالثانية ) ..
      لم نضع loop للصوت لأننا وضعناه بطريقة أخرى سيتكرر بها الصوت إلى ما لا نهاية كالتالي :


      رمز:
      كود:
      mysound.onSoundComplete = function() { this.start(); };
      هذا الكود مهم جدا لأن بدونه فإن الصوت عندما ينتهي لن يتكرر و إذا عملنا له loop كما تقدم في الشرح فإنه سيتكرر من آخر نقطة قمنا بتوقيفه عندها (طبعا فيه طرق أخرى كثير لتجاوز هذا الإشكال كالجمل الشرطية مثلا ) ..




      يبقى الكود

      رمز:
      كود:
      mysound.stop();



      و هو واضح و لا يحتاج لشرح




      أرجو أن تكون الفكرة و الشرح في متناول الجميع





      و السلام عليكم






      _|~| لا خير في كاتم علم |~|_

    2. #2
      التسجيل
      29-06-2005
      المشاركات
      829
      المواضيع
      19
      شكر / اعجاب مشاركة

      رد: درس إيقاف و تشغيل الصوت بزر واحد من نقطة التوقف بالأكشن

      شكرا على الدرس

      ويعطيك ألف عافية

    ضوابط المشاركة

    • لا تستطيع إضافة مواضيع جديدة
    • لا تستطيع الرد على المواضيع
    • لا تستطيع إرفاق ملفات
    • لا تستطيع تعديل مشاركاتك
    •