Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.08.2011, 22:24
ethereal999 вне форума Посмотреть профиль Отправить личное сообщение для ethereal999 Посетить домашнюю страницу ethereal999 Найти все сообщения от ethereal999
  № 1  
Ответить с цитированием
ethereal999
 
Аватар для ethereal999

Регистрация: Dec 2003
Адрес: Москва
Сообщений: 38
Отправить сообщение для ethereal999 с помощью ICQ
По умолчанию Не могу запустить метод через референс основного класса документа

создал референс на основной класс документа по такой схеме

Код AS3:
private static var _instance:Main;
        public static function get instance():Main {
            return _instance;
        }
 
        public function Main():void {
            _instance = this;
            ....
получать объекты и переменные находясь в других классах получается,
например, Main.instance.tocMenu.visible = false;
а вот на запуск функции (Main.instance.nextPageLoad()) флэш (CS5.5)
выдает ошибку:

Код:
1195: Attempted access of inaccessible method nextPageLoad through a reference 
with static type Main.
При этом nextPageLoad public. Когда трэйсю trace (Main.instance.nextPageLoad); пишет, что функция,
то есть видит ее.

как мне запустить метод основного класса документа из других классов?

======================
кажется, заработало:
Код AS3:
Main.instance.nextPageLoad.call (null, undefined);
может, есть еще какой-нибудь метод, и почему заработало в таком виде?
__________________
Love & Peace!


Последний раз редактировалось ethereal999; 19.12.2011 в 16:07.
Старый 10.08.2011, 03:39
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Вообще то метод в этом случае должен быть : публичный! Это раз, если вы используете статику то и метод статичный это два
__________________
Марк Tween

Старый 10.08.2011, 09:26
Zebestov вне форума Посмотреть профиль Отправить личное сообщение для Zebestov Посетить домашнюю страницу Zebestov Найти все сообщения от Zebestov
  № 3  
Ответить с цитированием
Zebestov
Lorem ipsum
 
Аватар для Zebestov

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
Цитата:
Сообщение от in4core Посмотреть сообщение
если вы используете статику то и метод статичный
Почему? Мы же получаем экземпляр класса.
__________________
Поймай яблоко 2!

Старый 10.08.2011, 13:29
ethereal999 вне форума Посмотреть профиль Отправить личное сообщение для ethereal999 Посетить домашнюю страницу ethereal999 Найти все сообщения от ethereal999
  № 4  
Ответить с цитированием
ethereal999
 
Аватар для ethereal999

Регистрация: Dec 2003
Адрес: Москва
Сообщений: 38
Отправить сообщение для ethereal999 с помощью ICQ
Цитата:
Сообщение от in4core Посмотреть сообщение
Вообще то метод в этом случае должен быть : публичный! Это раз, если вы используете статику то и метод статичный это два
в смысле сделать nextPageLoad статичным? пробовал, вываливается куча ошибок на отсутствие объектов.

Так почему не работает один метод и работает другой?
Я слышал мнение, что это из-за наличия TLF текста, коим я как раз пользуюсь. Заменить все на классик сейчас нет времени, но как-нибудь проверю эту гипотезу.
__________________
Love & Peace!


Последний раз редактировалось ethereal999; 19.12.2011 в 16:08.
Старый 10.08.2011, 13:40
Bgg вне форума Посмотреть профиль Отправить личное сообщение для Bgg Найти все сообщения от Bgg
  № 5  
Ответить с цитированием
Bgg
 
Аватар для Bgg

Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
Архитектуру смените. Делать статичный Main это колхоз.

Старый 10.08.2011, 13:42
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 6  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
ethereal999, покажите весь Main.

Старый 10.08.2011, 14:25
ethereal999 вне форума Посмотреть профиль Отправить личное сообщение для ethereal999 Посетить домашнюю страницу ethereal999 Найти все сообщения от ethereal999
  № 7  
Ответить с цитированием
ethereal999
 
Аватар для ethereal999

Регистрация: Dec 2003
Адрес: Москва
Сообщений: 38
Отправить сообщение для ethereal999 с помощью ICQ
Цитата:
Сообщение от Bgg Посмотреть сообщение
Архитектуру смените. Делать статичный Main это колхоз.
поясните, пожалуйста, не понимаю

прошу прощения за возможный тупак, программинг не моя основная профессия
Вложения
Тип файла: rar Main.rar (2.6 Кб, 20 просмотров)
__________________
Love & Peace!

Старый 10.08.2011, 16:42
Котяра вне форума Посмотреть профиль Отправить личное сообщение для Котяра Посетить домашнюю страницу Котяра Найти все сообщения от Котяра
  № 8  
Ответить с цитированием
Котяра
буду краток
 
Аватар для Котяра

модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
Отправить сообщение для Котяра с помощью ICQ Отправить сообщение для Котяра с помощью Skype™
С документ классом бывает, что происходят разные непонятки. Код по идее правильный. Просто компилятор флэш (CS5.5) мог ещё что-нибудь дописать.
Код посмотреть не могу - флэша не стоит.
А по поводу архитектуры - почитайте про событийную модель.
__________________
Отряд Котовскага

Создать новую тему Ответ Часовой пояс GMT +4, время: 07:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:43.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.