Fa باز شدن یک ناحیه در صفحه همراه با افکت

ENMIRZAEE

Banned
با سلام خدمت تمامی کاربراان این انجمن"mmb"
اگر میشه یه اسکریپت بنویسید که اگز روی یک دکمه کلیک کردیم به طور خیلی جالب باشه یک صفحه باز شه
مثل قایلهای فلش
من از افکت های mmb استفاده کردم ولی نشد.
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
لطفاً بیشتر توضیح بدید، دقیقاً چه چیزی مدنظرتون هست که پیاده سازی کنید ؟
 

ENMIRZAEE

Banned
با سلام خدمت تمامی کاربراان این انجمن"mmb"
تا حالا یک برنامه ی اتوران که با فلش ساخته شده باشه دیدی؟وقتی روییک دکمه کلیک می کنی نرم یک صفحه ی نیمه شفاف باز میشه بعد خیلی راحت تر با یک افکت نرم ییک صفحه ی مستطیلی شکل باز می شه و خودش تو اونجا به تور خودکار یه نوشته ی پیش فض تایپ می کنه!!!!!!!!!!!
گرفتی
اگر نگرفتی دوباره بگو

خوش به حال مجید آنلاینن که مدیر انجمن های خوبی داره
 

nevercom

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

ضمن اینکه عنوانی که انتخاب کردید اصلاً ارتباطی با سوالی که پرسیدید نداره، لطفاً هنگام ارسال مبحث عنوان مناسب رو انتخاب کنید
 

پیوست ها

  • PopUp_Animtion.rar
    923 بایت · بازدیدها: 83

ENMIRZAEE

Banned
فقط یه سوال
یه کد هم بنویس که به حالت اول برگردونه
همین جوری که اومد بره
دمت گرم
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
یکم تغییرش دادم

لطفاً برای تشکر از یک ارسال صرفاً به استفاده از دکمه ی تشکر بسنده کنید، ممنون از همکاریتون (پستتون رو از حالت تایید خارج کردم)
 

پیوست ها

  • PopUp_Animtion.rar
    1.1 کیلوبایت · بازدیدها: 54

ENMIRZAEE

Banned
بعد یه سوال دیگه
اگر بخوام بعد از اینکه این صفحه باز شد به صورت محوی چه تا نوشته بیاد باید از چه کدی استفاده کرد
منظور از محو یعنی اینکه یه نوشته به طور اینکه محو بوده کم کم آشکار شود.
دستت درد نکنه
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
بجز برای شئ Bitmap یا بطور دقیق بجز برای تصاویر در MMB برای اشیاء دیگه نمیشه خصوصیت شفافیت رو تغییر داد، برای اینکار باید نوشته هاتون رو بصورت عکس دربیارید و بعد شفافیتشون رو کم یا زیاد کنید (البته میتونید رنگ اشیاء رو تغییر بدید، شاید بتونه در برخی موارد همچین افکتی رو شبیه سازی کنه)
برای تغییر شفافیت هم تابع ImageOpacity در دسترس هست.
 

ENMIRZAEE

Banned
می شه یه کد بنویسید که حدوداً اینجوری باشه
این پیوست رو ببین
یه چیزی تو این مایه ها
بقیه توضیحات توی برنامه نوشتم
اگر فونت شما نخوند بدون که فونتش b titr هست
با تشکر
 

پیوست ها

  • Ashiyane.rar
    1.1 کیلوبایت · بازدیدها: 53
آخرین ویرایش:

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
اگر به مثالی که گذاشتم دقت کنید براحتی میتونید متوجه بشید روش کار به چه شکل هست
کلاً از دستور MoveObject برای جابجایی و تغییر اندازه اشیاء استفاده میشه، فقط تو این کدها من کمی حالت داینامیک بهش دادم تا بتونید راحت تر ازش استفاده کنید.
مثلاً برای اینکه حالت بزرگ شدن به شکلی باشه که از تمام زوایا کم کم بزرگ بشه (یعنی از وسط شروع به بزرگ شدن بکنه)، لازم هست که به اندازه ی نصف مقداری که تغییر عرض میده، در راستای x شئ جابجا بشه (برخلاف جهت بزرگ شدن)، برای ارتفاع هم بهمین شکل. (برای مثال برای x و y در دستور MoveObject از یک عدد ثابت استفاده کنید که تغییر نکنه، میبینید که شئ از سمت راست شروع به تغییر اندازه میده و نه از وسط)

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

ENMIRZAEE

Banned
سلام مهندس؛
یه سوال فنی
اگر بخواهیم سرعت را در باز شدن صفحه کنترل کنیم یا سرعت را پایین بیاوریم باید چه کار کنیم
با تشکر
 

ENMIRZAEE

Banned
با سلام خدمت برادران محترم
پیوست اولین را ببینید
می بینید که خیلی سریع صفحه باز میشود
چه گونه می توان سرعت را کنترل کرد؟
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
با تغییر مقدار متغیر Step میتونید سرعت رو کنترل کنید، مثلاً در اون مثال مقدار متغیر در حلقه به این شکل تغییر میکنه:
کد:
Step = Step + i*[color=#ff0000]2[/color]

شما میتونید مقدار این متغیر رو به هرشکلی که مایلید تغییر بدید، مثلاً به هر کدوم از حالت های زیر:
کد:
Step = Step + i 
Step = i 
Step = i*[color=#ff0000]3[/color] 
Step = [color=#ff0000]1[/color] 
Step = [color=#ff0000]2[/color]

با دستور Pause هم میتونید وقفه ی زمانی ایجاد کنید
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
بنده تو مثالی که براتون پیوست کردم، یکسری کد نوشتم
تو هرکدوم از اسکریپت های Open و Close متغیری وجود داره بنام Step، مقدار اون متغیر رو تغییر بدید، تو پست قبل هم توضیح دادم
توضیحات واضح هست، نیاز به قرار دادن نمونه نیست.
 
با سلام خدمت مدیر انجمن و آقای enmirzaee عزیز
من این تاپیکو دنبال کردم و ازش خوشم اومد و استفاده کردم ولی مشکلی که داره اینه که وقتی برای بار چهارم و پنجم روی دکمه کلیک می کنیم مکان صفحه عوض می شه
اگر میشه این مشکلو برطرف کنید و یا کد رو اینجا قرار بدین و یا یه طرح پیوست کنید
ممنون
با تشکر
 

nevercom

کاربر متخصص انجمن مولتی مدیا بیلدر
چون بعد از اجرای اسکریپت Close ممکن هست شئ چند پیکسل از جای اولیه ش جابجا بشه، بعد از اینکه اسکریپت Open هم اجرا میشه، چند پیکسل از جایی که دفعه ی قبل نشون داده میشد جابجا میشه
برای حل این مشکل مختصات اولیه ی شئ رو در یک متغیر نگهداری میکنیم (اسکریپت Page Start) و هربار که اسکریپت Close اجرا میشه در پایان کار شئ رو به اون مختصات جابجا میکنیم.
 

پیوست ها

  • PopUp_Animtion.rar
    1.1 کیلوبایت · بازدیدها: 29
سلام
من اینکاری رو که شما گفتید کردم
تو طرح شما هیچ مشکلی نداره ولی زمانی که من اینو تو یه طرح دیگه پیاده می کنم مکان صفحه عوض میشه
باید چی کارش کرد؟
ممنون
--------------------------------------------------------------------------------------------------------------------------------------------------------------
 
آقا من همین کارو کردم
برای بار اول راحت باز شد و مکان صفحه تغییری نکرد.
بعد از 2 ساعت که رفتم بخوابم و دوباره ادامه ی پروژه رو طراحی کنم مشکل دار شد.
حالا اون پروژه ایی که خودتون طراحی کردید مشکلی نداره
من همه ی عواملی که شما تو فایل ارسالی فرستاده بودید امتحان کردم ولی درست نشد.
حالا مشکل اینجوریه که برای بار اول که روی دکمه کلیک می کنی صفحه باز می شه و برای بار دیگه که کلیک می کنی تا بسته شه راحت بسته می شه و برای دفعات بعد که روی دکمه کلیک می کنی مکان صفحه کمی بالاتر ایجاد می شه و برای دفعات بعد دبگه مکانش همون مکان بالا است و تغییر نمی کنه
حالا من این کد هایی که استفاده کردم رو برای تون فرستادم
برای اسکریپت open از کد زیر ؛
WLimit = 777
HLimit = 420
Object$ = 'Bitmap'
Show("Object$")
For i=1 To Infinity
Step = Step + i*2
X = ObjectX(Object$)- Step
Y = ObjectY(Object$)- Step
W = ObjectWidth(Object$)+(2*Step)
H = ObjectHeight(Object$)+(2*Step)
If (W > WLimit) Then
W = WLimit
X = ObjectX(Object$)
WEnd = TRUE
End
If (H > HLimit) Then
H = HLimit
Y = ObjectY(Object$)
HEnd = TRUE
End
MoveObject("Object$","X,Y,W,H")
**Refresh("")
If (WEnd = TRUE & HEnd = TRUE) Then
Break()
End
Next i
Step = 0
WEnd = HEnd = FALSE
و برای کد close از کد زیر ؛
WLimit = 0
HLimit = 0
Object$ = 'Bitmap'
For i=1 To Infinity
Step = Step + i
X = ObjectX(Object$)+ Step
Y = ObjectY(Object$)+ Step
W = ObjectWidth(Object$)-(2*Step)
H = ObjectHeight(Object$)-(2*Step)
If (W < WLimit) Then
W = WLimit
X = ObjectX(Object$)
WEnd = TRUE
End
If (H < HLimit) Then
H = HLimit
Y = ObjectY(Object$)
HEnd = TRUE
End
MoveObject("Object$","X,Y,W,H")
**Refresh("")
If (WEnd = TRUE & HEnd = TRUE) Then
MoveObject("Object$","InitX,InitY,0,0")
Hide("Object$")
Break()
End
Next i
Step = 0
WEnd = HEnd = FALSE

وبرای کدی که تو محیط اصلی صفحه به کار بردید از ؛
Object$ = 'Bitmap'
InitX = ObjectX(Object$)
InitY = ObjectY(Object$)
استفاده کردم
ممنون
--------------------------------------------------------------------------------------
گروه امنیتی آشیانه(دومین گروه هکری دنیا)
 

جدیدترین ارسال ها

بالا