Вы, кажется, немного смущены.
Итак, у вас есть иерархия отображения, в которой ваш экранный объект Page.as является родительским для NavigationMenuClass.as, верно?
Ваш NavigationMenuClass должен отправлять события для «следующего» и «предыдущего». Класс Page должен прослушивать эти события и что-то делать.
Ваш код уже выполняет диспетчерскую часть, хотя он закомментирован. Я бы поместил это в обработчик кликов вашей кнопки и использовал бы его для отправки следующего или предыдущего события:
private function nextPress(event:Event) {
// dispatchEvent(new Event("showPage"));
// this will call the Page class Menmber function page:Page = new Page; page.showNextPage();
dispatchEvent(new Event("next"));
}
На вашей странице вы просто добавляете прослушиватель событий:
navigationMenuClassInstance.addEventListener('next', onNext);
public function onNext(event:Event):void{
// write code to change content
}
Вы можете использовать тот же подход для реализации предыдущего события. Чтобы ответить на несколько ваших "странных формулировок"
Я хочу создать собственное событие, и оно
будет доступен любому другому классу
Я не уверен, что вы подразумеваете под доступным.
Вы можете создать собственный класс событий, который расширяет Event, и любой другой класс может использовать его, если он импортирует его. Мой пример выше не создает пользовательский класс событий, но использует класс событий по умолчанию.
С точки зрения диспетчеризации, событие отправляется только до своего «родителя». Если событие вспыхнет, оно перейдет к своему родительскому родителю, потом к родительскому родителю и так далее до самой стадии.
Как передать объект, как я могу
вызвать конкретную функцию-член
используя Event и Event Dispatcher
методы.
Я не уверен, что вы подразумеваете под "передачей объекта" здесь. Когда вы отправляете событие, этот класс событий всегда доступен для прослушивателя событий в качестве аргумента этого метода прослушивателя событий. Это похоже на прохождение объекта.