ورود

View Full Version : سوال: ایجاد صفحه نمایش کلیپ های تصویری در فلش



rezam44
شنبه 19 مرداد 1392, 16:48 عصر
سلام
Adobe flash CS6
میخوام تو 1 صفحه ای.... لیستی از اسامی کلیپ ها رو داشته باشم.. و هر وقت رو یکیش کلیک می کنم... کلیپ مربوطه شروع به پخش بکنه.....

کسی بلده؟

خودم که اینطوری درست کردم:
اسامی رو ، پس زمینه تمام فریم ها قرار دادم.... هر کلیپ رو توی 1 فریم مجزا قرار دادم... و با کلیک رو هر اسم به کلیپ مربوطه میره....

کسی جور دیگه ای بلد نیست؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟:متفک :

rezam44
شنبه 19 مرداد 1392, 22:15 عصر
یه مشکلی هم که دارم..... اینه که دکمه فول اسکرین هنگام مشاهده کلیپم کار نمیکنه:ناراحت:

magnetbox.ir
دوشنبه 21 مرداد 1392, 18:47 عصر
اول از همه نوع اکشن اسکریپت رو مشخص کنید .

حجم کلیپ ها خیلی مهم هستن .

کار در مورد چی هست تا بهتر بشه راهنمایی کرد

دکمه فول اسکرین تون هم یک چیزی روش هست که نمیزاره شما کلیک کنید و یا از حالت سیمبل خارج شده و یا سیمبلی که این کارو میکنه تو فریم جاری نیست و یا ......

rezam44
دوشنبه 21 مرداد 1392, 22:50 عصر
اول از همه نوع اکشن اسکریپت رو مشخص کنید .


Action Script 3

حجم کلیپ ها خیلی مهم هستن .
یکیش 210 مگ ....بقیه 10 مگ و زیر 10 مگ....


دکمه فول اسکرین تون هم یک چیزی روش هست که نمیزاره شما کلیک کنید و یا از حالت سیمبل خارج شده و یا سیمبلی که این کارو میکنه تو فریم جاری نیست و یا ......
فول اسکرین رو حل کردم...

magnetbox.ir
سه شنبه 22 مرداد 1392, 09:44 صبح
1- درست ترین کار اینه که شما هر کدام از کلیپ تون رو به صورت جدا گانه در فایل های Swf ذخیره کنید و لود و آن لود کنید

2- کلیپ هاتون رو در کتابخانه قرار بدید و هر موقع نیاز به هر کدام داشتید از آن یک new بسازید و addChild کنید

3- فایل هاتون رو در تایم لاین قرار بدید و هر موقع نیاز به هر کدام بود به داخل فریم آن بروید

4- کل فایل هاتون در یک فریک باشد و هر کدام را نیاز داشتید visible = true و بعد play

چون فایل هاتون سنگین هستند من گزینه یک رو پیشنهاد می کنم : دلیل ----> فایل اصلی زودتر لود می شه و اگر محصول سی دی باشه با driver هایی که ضعیفن کمتر به مشکل می خورید

موفق باشید

rezam44
سه شنبه 22 مرداد 1392, 11:25 صبح
1- درست ترین کار اینه که شما هر کدام از کلیپ تون رو به صورت جدا گانه در فایل های Swf ذخیره کنید و لود و آن لود کنید



اگه کلیپم رو تو Swf ذخیره کنم... دیگه نیازی به مسیر اون کلیپ نیست؟
یعنی نیازی نیست که پوشه ای که اون کلیپ توش هست کنار این فایل Swf قرار داده بشه؟

magnetbox.ir
سه شنبه 22 مرداد 1392, 19:37 عصر
چرا لازم هست و اگر دلیل سئوال شما امنیت هست برید در مورد لود byteArray تحقیق کنید

rezam44
سه شنبه 22 مرداد 1392, 22:49 عصر
1- درست ترین کار اینه که شما هر کدام از کلیپ تون رو به صورت جدا گانه در فایل های Swf ذخیره کنید و لود و آن لود کنید



میشه طریقه شو بگید؟ بنده تبدیلش کردم به SWF ولی نتونستم ازش استفاده کنم.

magnetbox.ir
چهارشنبه 23 مرداد 1392, 18:12 عصر
به این تاپیک که قبلا ایجاد کردم برید

http://barnamenevis.org/showthread.php?375261-%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%DA%A9%D8%B4%D9%86-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D8%AA-3

لطفا تاپیک ها آموزشی یک جوری حفظ بشن که تو دسترس باشند

rezam44
چهارشنبه 23 مرداد 1392, 23:19 عصر
آموزش لود فایل swf:

1- شما یک لودر تعریف می کنید .

2- یک مسیر مشخص می کنید .

3- یک اونت برای لودر تعریف می کنید که هر موقع لود تموم شد بفهمید .

4- فایل لود شده را به کار اضافه می کنید .

5- لودر رو خالی می کنید و پاک می کنید .

که می شه این :
import flash.display.MovieClip;
import flash.net.URLRequest;
import flash.events.Event;
import flash.display.Loader;

var mc :MovieClip;
var ld:Loader = new Loader();

var url:URLRequest=new URLRequest("path");
ld.contentLoaderInfo.addEventListener(Event.COMPLE TE,CM)
ld.load(url);
function CM(e:Event)
{
ld.contentLoaderInfo.removeEventListener(Event.COM PLETE,CM)
mc = ld.content as MovieClip;
this.addChild(mc);
ld.contentLoaderInfo.addEventListener(Event.UNLOAD ,UN);
ld.unloadAndStop(true);
}
function UN(e:Event)
{
ld.contentLoaderInfo.removeEventListener(Event.UNL OAD,UN);
ld = null;
}




ممنون .... این کد ها رو کجا باید بنویسم.... واینکه .... اون path مسیر فایلمون (کلیپ، فیلم و...) هستش دیگه درسته؟
حالا باید چطور تعیین کنیم که کدوم فریم باشه...
واینکه اگه تعداد فایل هامون (کلیپ، فیلم و...) بیش از 300 تا باشه ... باید برا هر کدوم این قطعه کد رو نوشت یا خیر؟

تشکر

magnetbox.ir
پنج شنبه 24 مرداد 1392, 21:08 عصر
سلام :
این کد ها داخل کلاس یا تایم لاین باید نوشته شوند .
path مسیر فایل هست
(حالا باید چطور تعیین کنیم که کدوم فریم باشه ) منظور این سئوالتون رو متوجه نشدم
شما یک تابع می نویسید و تا path به عنوان آرگومان می گیرید . در نتیجه فقط برای هر فایلی که نیاز به لود داره یک تابع رو صدا می کنی و مسیر فایلتون هست که تغییر می کنه

موفق باشید

rezam44
جمعه 25 مرداد 1392, 14:52 عصر
سلام :
این کد ها داخل کلاس یا تایم لاین باید نوشته شوند .
path مسیر فایل هست
(حالا باید چطور تعیین کنیم که کدوم فریم باشه ) منظور این سئوالتون رو متوجه نشدم
شما یک تابع می نویسید و تا path به عنوان آرگومان می گیرید . در نتیجه فقط برای هر فایلی که نیاز به لود داره یک تابع رو صدا می کنی و مسیر فایلتون هست که تغییر می کنه

موفق باشید
یعنی اگه همین کدی که شما نوشتید رو کپی پیست کنم .. کار میکنه دیگه بله؟
بعد حالا این path رو چطور تعیین می کنیم تو این کد.....
باید یکی یکی آدرس فایل ها رو توی کد درج کنیم یا بر اساس اسم فایل خودش پیدا می کنه؟


این عکس رو ببینید... من می خوام مثلا توی یه صفحه یه دکمه داشته باشم که وقتی زدم بره به صفحه بعدی که لیست فیلم و غیره تو اون صفحه هستش...
توی عکس ، صفحه 2 .. اون حروفات لاتین همون لیست فیلم ها هستن فرضا.
بصورت عادی با زدن هر کدوم اون فیلم توی کادر پایینش پخش خواهد شد.... یعنی با زدن یکی از حروف میره به فریم مربوطه که فیلم اونجا لود شده..... ...

حالا نحوه استفاده و کارکرد کدی که شما فرمودید توی این بحث رو میشه بهم یاد بدید؟ ممنون میشم....
البته پررویی بنده رو ببخشید ها ... چون کاری که می خوام بکنم .. حجمش زیاد خواهد بود... به همین خاطر مسدع شدم.... ممکنه نصف دی وی دی حجم بخواد.....
پیشنهاد شما وسوسه م کرد:چشمک:
تشکر

109178

magnetbox.ir
جمعه 25 مرداد 1392, 15:21 عصر
داخل صفحه دوم برای هر دکمه یک ایونت کلیک بنویسید . این کارو با حلقه هم می تونید بکنید . فعلا برای هر دکمه یک ایونت بنویسید .

بعد داخل تابع شنودگر تابع لودر رو صدا کنید با مسیر دلخواه .

btn.addEventListener(MouseEvent.CLICK,MC)
function MC(e:MouseEvent)
{
loaderFunction(custom path)
}
function loaderFunction(path:String)
{
اول unload

دوم load
}

rezam44
جمعه 25 مرداد 1392, 17:13 عصر
داخل صفحه دوم برای هر دکمه یک ایونت کلیک بنویسید . این کارو با حلقه هم می تونید بکنید . فعلا برای هر دکمه یک ایونت بنویسید .

بعد داخل تابع شنودگر تابع لودر رو صدا کنید با مسیر دلخواه .

btn.addEventListener(MouseEvent.CLICK,MC)
function MC(e:MouseEvent)
{
loaderFunction(custom path)
}
function loaderFunction(path:String)
{
اول unload

دوم load
}


ممنون
ای کاش یک نمونه می ذاشتید اینجا تا بهتر متوجه بشم:متفکر: