Klasa: AsBroadcaster
Kompatybilność: ActionScript 1.0, Flash6+
Dodaje powiadomienie o wydarzeniu oraz funkcjonalność zarządzania do danego obiektu. Jest to statyczna metoda, musi być ona wezwana poprzez klasę AsBroadcaster (gdzie obiekt1
jest nazwą obiektów do zainicjalizowania jako nadawca wydarzeń):
AsBroadcaster.initialize(obiekt1);
Wskazówka: Częstym popełniany błędyem jest pisanie drugieje litery w nazwie klasy z dużej litery AsBroadcaster. Kiedy wzywasz AsBroadcaster.initialize() metodę, upewnij się, że druga litera jest napisana z małej litery, inaczej AsBroadcaster zawiedzie, ale nie wyświetli żadnego błędu.
Ta metoda dodaje _listeners
właściwość wraz z trzema podanymi metodami do obiektów określonych przez parametr obiekt1
:
obiekt1.addListener()
obiekt2.removeListener()
obiekt3.broadcastMessage()
Przykład:
//Przykład1 - proste zastosowanie
var obiekt1:Object = new Object();
var mojOdbiorca1:Object = new Object();
var mojOdbiorca:Object = new Object();
mojOdbiorca1.wydarzenie = function() {
trace("mojOdbiorca1 odebrał wydarzenie");
}
mojOdbiorca2.wydarzenie = function() {
trace("mojOdbiorca2 odebrał wydarzenie");
}
AsBroadcaster.initialize(obiekt1); // deklaracja nadawcy
obiekt1.addListener(mojOdbiorca1); // rejestrowanie odbiorcy do nadawcy (mojOdbiorca1)
obiekt1.addListener(mojOdbiorca2); // rejestrowanie odbiorcy do nadawcy (mojOdbiorca2)
obiekt1.broadcastMessage("wydarzenie"); // wywoływanie wydarzenia
//Przykład 2 - przekazywanie dodatkowych argumentów do wydarzeń
var obiekt2:Object = new Object();
var mojOdbiorca3:Object = new Object();
mojOdbiorca3.wydarzenie2 = function(param1:Number, param2:String) {
trace("odebranie wiadomości");
trace("param1: " + param1);
trace("param2: " + param2);
}
AsBroadcaster.initialize(obiekt2);
obiekt2.addListener(mojOdbiorca3);
obiekt2.broadcastMessage("wydarzenie2", 3, "jakiś tekst");
Listing
Ranga: Administrator serwisu Punktów: 0