לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #4  
ישן 17-10-2005, 09:49
  -FoxyBrain- -FoxyBrain- אינו מחובר  
 
חבר מתאריך: 03.09.05
הודעות: 2,857
אוקיי, צריך להסביר את זה מתישהו :)
בתגובה להודעה מספר 3 שנכתבה על ידי noam906 שמתחילה ב "אממ... אם תוכל לתת לי קישור..."

attachMovie היא פקודה המאפשרת לך למשוך MovieClips מהסיפרייה בזמן ריצה.

למה להשתמש בattach במקום בdup?

במקרים מסויימים, attach יותר נוחה מהפקודה duplicateMovieClips מפני שהיא מושכת את
המוביקליפים ישירות מהסיפריה, בניגוד ל dup שדורשת שיהיה מוביקליפ אחד על הבמה.

קודם כל, זה מונע את הבעיה שישנה ב dup כאשר אתה מנסה "לשלוט" על המוביקליפ הראשוני, לדוגמה:
קוד:
for(var i:Number=0; i<=10; i++) { duplicateMovieClip(myMC,"mc"+i,i); _root["mc"+i]._x=i*10 _root["mc"+i].onEnterFrame=function() { this._x+=5 } }


מה שיקרה כאן זה שישתכפלו 10 מוביקליפים ויזוזו ימינה אך המוביקליפ הראשוני ישאר במקומו ופה בעצם החיסרון (בדרך כלל... לפעמים זה יכול להיות יתרון)
כמובן שאפשר לסדר את זה כך שיהיה ניתן לשלוט גם בו או פשוט לשים אותו באזור בלתי נראה, אך פשוט עדיף להשתמש ב attach

עוד חיסרון של dup זה שדי קשה להכניס את המוביקליפים המשתכפלים אלתוך מוביקליפ-מכיל (או container בלעז ) , מאותה סיבה בדיוק שקשה לשלוט על המוביקליפ הראשוני, דבר שהוא מאוד חשוב כמשכפלים מוביקליפים מפני שכך העומקים לא יכולו לדרוס עומקים של מוביקליפים קיימים על הבמה או יעלו מעליהם, מה גם שקל יותר לשלוט בכל המוביקליפים שהשתכפלו יחד.


attachMovie - הסבר

התבנית הבסיסית
קוד:
attachMovie(id:String, name:String, depth:Number, [initObject:Object]) : MovieClip


id = שם המוביקליפ, שאותו אתה רוצה למשוך, בסיפרייה - linkage
name = שם המוביקליפ החדש
depth = עומק המוביקליפ
initObject = אתחול מיקום המוביקליפ

כפי שאתה רואה, התבנית די דומה לתבנית של dup אפשר אפילו לומר זהה.

דוגמה לשימוש ב attachMovie :
קוד:
var mcClip:MovieClip = this.createEmptyMovieClip("mcClip",this.getNextHighestDepth()); for(var i:Number=0; i<=10; i++) { mcClip.attachMovie("myMC","mc"+i,i,{_x:i*10,_y:Stage.height/2}); mcClip.onEnterFrame=function() { this._x+=5 } }

מה שעשיתי פה זה יצירתי מוביקליפ ריק (conatainer) ושמרתי את הרפרנס שלו בתוך משתנה בשם mcClip.
לאחר מכן הרצתי לולאה הפועלת 10 פעמים והשתמשתי במשתנה המתקדם שלה בתור שם המוביקליפ ועומקו מפני שלא יכולים להיות כמה מוביקליפים עם אותו שם ו\או עם אותו העומק.
לכל מוביקלים משתכפל הוספתי פונקציית enterframe אשר מקדמת את האיקס שלו ב 5 בכל פעם.

זהו, אני חושב שזה היה די ברור
לאחר מכן יצרתי לולאה
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #14  
ישן 17-10-2005, 12:09
  -FoxyBrain- -FoxyBrain- אינו מחובר  
 
חבר מתאריך: 03.09.05
הודעות: 2,857
אתה אמור להשאיר את זה איך שזה
בתגובה להודעה מספר 12 שנכתבה על ידי noam906 שמתחילה ב "תודה רבה... :]"

זה יוצר לך מוביקליפ שלתוכו יכנסו כל המוביקליפים שמתשכפלים.
מה זה רפרנס? אממ... אני מניח שאפשר גם להגדיר את זה כ"ניתוב".
תציץ באשכול הזה, אולי זה יעזור לך להבין.

בקשר לבעיה הצפציפית שלך אתה צריך לעשות משהו כזה:
קוד:
var counter:Number=0; function attachIfclick(mcCircle:MovieClip) { mcCircle.onRelease=function() { var bob:MovieClip=_root.attachMovie("mcCircle","mcCircle"+counter,this.getNextHighestDepth(),{_x:Stage.widt h/2,_y:Stage.height/2}); //you can change the x and y value ({_x:Stage.width/2,_y:Stage.height/2}) to whatever you like... trace(bob) counter++; //delete this.onRelease //you can delete the onRelease function once the movieclip has been duplicated if you like, in order to do so, just delete this two slashes from the line above. } } attachIfclick(sqr.cir);


כפי שאתה רואה כתבתי פונקציה שמכילה את פונקציית הOnRelease.
הפונקציה מקבלת רפרנס של מוביקליפ לתוך המשתנה - mcCircle:MovieClip - ועליו היא מצבעת את הonRelease.

הפעלתי את הפונקציה עלי ידי קריאה פשוטה בשורה אחרי זה attachIfclick(sqr.cir) -
sqr זה האינסטנס של המוביקליפ-ריבוע וcir זה האינסטנס של המוביקליפ-עיגול.

בתוך פונקציית הonRelease הגדרתי שכאשר לוחצים על המוביקליפ ימשך מוביקליפ מהסיפרייה עם הלינקייג' - mcCircle אל הבמה (באמצע הבמה, אתה יכול לשנות את זה).

כתבתי לך גם כמה הערות...
בהצלחה
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה


נערך לאחרונה ע"י -FoxyBrain- בתאריך 17-10-2005 בשעה 12:16.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #22  
ישן 17-10-2005, 14:52
  -FoxyBrain- -FoxyBrain- אינו מחובר  
 
חבר מתאריך: 03.09.05
הודעות: 2,857
כמה סיבות :)
בתגובה להודעה מספר 21 שנכתבה על ידי frost_force שמתחילה ב "[QUOTE] אז זהו,..."

  1. כדי שהוא יכול למחוק ולהצמיד את האיבנט
  2. כדי שהוא יוכל להדביק את האיבנט גם למוביקליפים אחרים
  3. כדי שאם הוא ירצה לשנות שם או ניתוב הוא יצטרך להחליף רק במקום אחד
  4. כדי שהוא לא יהיה חייב שאירוע הלחיצה יתבציע עם טעינת ה SWF
  5. כדי שאם הוא ירצה להוסיף עוד פעולות לאותו מוביקליפ הוא יכול לעשות זאת בקלות
ועוד ועוד...
אני מציע לך באמת ללמוד לעומק את העניין הפונקציות עד שתבין שיש לזה רק יתרונות


וanimal, אם מקוד כזה קטן תאה נבהל אז מה אני אגיד לך.... אתה לא תוכל להתקדם.

תקרא אותו ותבין שהוא ממש פשוט.

רק שאין ממש קשר למה שאתה ביקשת
או שתעשה בדרך שדניאל אמר לך, או שתשתמש באיתחול המיקום המובנה שיש לך בattachMovie:
קוד:
var mcClip:MovieClip=this.attachMovie("mcCircle","mcCircle",this.getNextHighestDepth(),{_x:300,_y:200});
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה


נערך לאחרונה ע"י -FoxyBrain- בתאריך 17-10-2005 בשעה 14:59.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 02:02

הדף נוצר ב 0.06 שניות עם 12 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר