Kali ini kita akan mencoba membahas Dispatching Custom Events(dispatchEvent()) pada sebuah class.., dispatchEvent() itu terkandung pada EventDispatcher class,..Kegunaannya untuk memanipulasi sebuah fungsi dalam methods, agar lebih jelas.. baiknya kita langsung melihat penerapannya
dispatchEvent(new Event("my event"));
hal ini akan mengcostum event yang kita inginkan menjadi my event
sebagai contoh seumpama saya memiliki sebuah class yang saya beri nama custumclick.as berada pada folder CustumEvents kemudian folder CustumEvents berada pada folder PustakaFlash kemudian folder PustakaFlash saya letakkan di folder com,....lalu saya isikan script berikut pada custumclick.as
package com.PustakaFlash.CustumEvents
{
import flash.display.*;
import flash.events.MouseEvent;
import flash.events.Event;
public class custumclick extends Sprite
{
public function custumclick(btn)
{
btn.buttonMode=true;
btn.addEventListener(MouseEvent.CLICK, buttondiklik1,false,0,true);
}
public function buttondiklik1(event:MouseEvent)
{
dispatchEvent(new Event("my event"));//dispatchEvent
}
}
}
nah dalam pemanggilannya pada timeline,.. adalah sebagai berikut ....
import com.PustakaFlash.CustumEvents.custumclick;// ini untuk mengimpor atau include costum click
var btnRemove= new custumclick(btnRemove);//ini mendefinisikan variabel dan objek yang diklik yaitu btnRemove
btnRemove.addEventListener("my event", testHandler);
function testHandler(event:Event):void
{
trace("button 1");
}
Jika anda melakukan dengan benar maka ketika anda mempublis dan kemudian mengklik btnRemove maka pada output panel akan menghasilkan
button 1
Terlihat jelas sekali yang biasanya bila kita mengaktifkan sebua movieclipt/ button dengan scripth ini
btnRemove.addEventListener(MouseEvent.CLICK, testHandler);
Kini telah kita gantikan dengan
btnRemove.addEventListener("my event", testHandler);
jika ingin Perapannya dalam event constant kita harus merubah custumclick.as menjadi seperti ini
package com.PustakaFlash.CustumEvents
{
import flash.display.*;
import flash.events.MouseEvent;
import flash.events.Event;
public class custumclick extends Sprite
{
public static const click_btn:String = "btn";
public function custumclick(btn)
{
btn.buttonMode=true;
btn.addEventListener(MouseEvent.CLICK, buttondiklik1,false,0,true);
}
public function buttondiklik1(event:MouseEvent)
{
dispatchEvent(new Event(custumclick.click_btn));//ddispatchevent
}
}
}
kemudian pada timeline script kita rubah menjadi seperti ini
import com.PustakaFlash.CustumEvents.custumclick;// ini untuk mengimpor atau include costum click
var btnRemove= new custumclick(btnRemove);//ini mendefinisikan variabel dan objek yang diklik yaitu btnRemove
btnRemove.addEventListener(custumclick.click_btn, testHandler);
function testHandler(event:Event):void
{
trace("button 1");
}
ini akan merubah MouseEvent.Click menjadi
btnRemove.addEventListener(custumclick.click_btn, testHandler);
By Ricko nada di Pustaka Flash terima kasih telah membaca :) Dispatching Custom Events :)
0 komentar:
Post a Comment