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

במדריך הזה אסביר לכם איך ליצור כפתור פעיל בפלאש ואת 2 האפשרויות לקוד שנצטרך, ActionScript 2.0 וגם ActionScript 3.0.

ActionScript 2.0
נפתח את הפלאש וניצור קובץ חדש מסוג ActionScript 2.0
קובץ מסוג ActionScript 2.0

ניצור כפתור, אפשר להוסיף עליו טקסט אם רוצים כמו כאן
יוצרים כפתור


נבחר את הכפתור שיצרנו (כולל הטקסט) ונאחד לסימבול מסוג Button בעזרת F8 וניתן לו את השם myButton.
ניצור סימבול מסוג Button

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

on(release)
{
Trace ("Hello World");
}

נריץ את הסרט בעזרת Ctrl+Enter ונלחץ על הכפתור, מיד נראה שבחלונית output נקבל הדפסה של המשפט "Hello World" כמו שרצינו.
נכתוב קוד ונריץ את הסרט
נסביר, (on(release בעצם זהו פונקציה יעודית לכפתור שאורמת ברגע שלחצנו על כפתור ושיחררנו את האצבע תפעל הפונקציה שבתוך הסוגריים המסולסלות { }, עכשיו הפקודה trace מדפיסה לנו איזה משפט שנרצה שמוקף בתוך הסוגריים והמרכאות.

פשוט וקל!

אבל היום השימוש ב ActionScript 3.0 נכנס ואיתו שינויים – אי אפשר יותר לתת סקריפט ישירות על הכפתור וצריך לתת סקריפט שיזהה את הכפתור ואת האירוע שנרצה שיקרה, נשמע מורכב אבל אסביר לכם הכל.

ActionScript 3.0
נפתח את הפלאש וניצור קובץ חדש מסוג ActionScript 3.0
קובץ מסוג ActionScript 3.0

ניצור שוב כפתור עם טקסט כמו קודם
יוצרים כפתור

נבחר את הכפתור ונאחד אותו לסימבול מסוג Button כמו שעשינו קודם עם השם myButton.
ניצור סימבול מסוג Button

כעת ניצור שכבה חדשה לסקריפטים בשם as (קיצור של ActionScript) ובה נכתוב את הקוד – הצעד הזה נעשה מכיוון שאי אפשר באקשנסקריפט 3 לכתוב קוד על אובייקטים/סימבולים אלא בשכבה ריקה לגמרי.
נוסיף שכבה חדשה לסקריפט

נכתוב את הקוד הבא:

addEventListener(MouseEvent.CLICK,myfunc);

נכתוב את הקוד addEventListener

בעצם אנחנו אומרים לפלאש ליצור משהו "שיקשיב" לאירוע מסויים שיקרה ואז יפעיל את הפונקציה addEventListener.
ואז סוג האירוע אליו "יקשיב" הפלאש יהיה מסוג "אירוע עכבר" MouseEvent.
האירוע עצמו יהיה לחיצה CLICK.
ושם הפונקציה שניתן תהיה myfunc במקרה הזה.

אח"כ ניצור את הפונקציה (הפעולה עצמה) כך:

function myfunc(e:MouseEvent)
{
trace("Hello World");
}

נכתוב את הפונקציה שתדפיס

מכריזים על הפונקציה function myfunc ובסוגריים מציינים את סוג האירוע MouseEvent בדומה למה שרשמנו למעלה ב-eventListener, וניתן לו את השם e, כקיצור של event.

בתוך הסוגריים המסולסלות של הפונקציה נרשום את הפקודה ;("trace("Hello World כדי להדפיס כמו שעשינו באקשנסקריפט 2.

* שימו לב שהפלאש הוסיף אוטומטית את השורה הזו למעלה:

import flash.events.MouseEvent;

זה בסדר, תתעלמו smiley

נריץ את הסרטון ונראה שזה עובד מצויין!נריץ את הסרטון ונראה שהכל עובד

למדנו 2 אפשרויות ליצירת כפתור בפלאש, אם ידרשו אקשנסקריפט כזה או אחר – עכשיו אתם יודעים איך עושים את זה נכון.

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

להורדת הקבצים:

myButtonAS2.fla
myButtonAS3.fla