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

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

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

Регистрация: Jul 2009
Сообщений: 9
Attention переменные из класса

У меня AS 3 файл отсюда: http://www.heaveninteractive.com/weblog/20...ith-php-part-1/

Как я могу указать эти данные:
Код:
  var username = evt.target.data.username;
  var email = evt.target.data.email;
в файле .fla :

Код:
function onReady(event:UEvent):void {
  ugap.setCenter(new umail(username,email), 14);
  }
просто указать не получается, ошибка

1120: Access of undefined property email.


Скажите как использовать переменные из класса объявленные в отдельном actionscript файле.

Старый 30.07.2009, 15:33
Аллиас вне форума Посмотреть профиль Отправить личное сообщение для Аллиас Найти все сообщения от Аллиас
  № 2  
Ответить с цитированием
Аллиас
 
Аватар для Аллиас

Регистрация: May 2009
Сообщений: 63
Цитата:
Сообщение от NARKOZ Посмотреть сообщение
Скажите как использовать переменные из класса объявленные в отдельном actionscript файле.
Нужно импортировать этот класс, затем присвоить экземпляр этого класса переменной, и тогда к тем переменным экземпляра, обращение к которым предусмотрено в классе, можно будет обратиться как к свойствам созданной переменной. Например:

Код AS3:
//импортируем какой-нибудь класс пользовательский класс
//должен находится там же, где .FLA
import MyClass; 
//создаем экземпляр класса и присваиваем его переменной my_class
var my_class:MyClass = new MyClass(//сюда параметры если предусмотрены);
//выведет переменную prop класса MyClass
trace(my_class.prop);
В вашем случае судя по всему, переменные username и email передаются в конструкторе экземпляра, то-есть вы должны указывать в создаваемом экземпляре не переменные класса, а готовые значения с которыми класс будет оперировать:

Код AS3:
function onReady(event:UEvent):void {
  ugap.setCenter(new umail("Vasya", "vasya@gmail.com"), 14);
 }


Последний раз редактировалось Аллиас; 30.07.2009 в 15:37.
Старый 30.07.2009, 16:30
NARKOZ вне форума Посмотреть профиль Отправить личное сообщение для NARKOZ Найти все сообщения от NARKOZ
  № 3  
Ответить с цитированием
NARKOZ
 
Аватар для NARKOZ

Регистрация: Jul 2009
Сообщений: 9
Получил ошибки вида:
1119: Access of possibly undefined property phonenumber through a reference with static type Main.

Не могу указывать в создаваемом экземпляре не переменные класса, а готовые значения с которыми класс будет оперировать. Из скрипта я получаю значение переменных, и эти значения должны быть использованы в главном файле, заранее я эти значения не знаю. Те берутся из скрипта, а те в свою очередь из серверного скрипта.

Добавлено через 3 минуты
код:
Код AS3:
import Main;
//создаем экземпляр класса и присваиваем его переменной exz
var exz:Main = new Main();//сюда параметры если предусмотрены);
//выведет переменную phone класса Main
var phonenumber:Number = exz.phone;
все в actionscript 3.

Старый 30.07.2009, 16:47
Аллиас вне форума Посмотреть профиль Отправить личное сообщение для Аллиас Найти все сообщения от Аллиас
  № 4  
Ответить с цитированием
Аллиас
 
Аватар для Аллиас

Регистрация: May 2009
Сообщений: 63
Чтобы к переменной экземпляра можно было обратится, она должна быть объявлена на уровне определения класса с атрибутом public.
Код AS3:
package{
  public class Main{
    //переменные экземпляра объявлять только тут:
    public var phonenumber:Number = _ЗНАЧЕНИЕ;
    //теперь у экземпляра есть свойство phonenumber, которое содержит _ЗНАЧЕНИЕ
    public function Main(){
    //конструктор класса, здесь (и еще много где) доступные экземплярам переменные объявлять нельзя
    var localVar:String = "А я локальная, когда выполнится конструктор меня съедят :(";
    }
  }
}
А вообще в таких "размытых" случаях надо бы прилагать исходник...


Последний раз редактировалось Аллиас; 30.07.2009 в 17:00.
Старый 31.07.2009, 04:46
NARKOZ вне форума Посмотреть профиль Отправить личное сообщение для NARKOZ Найти все сообщения от NARKOZ
  № 5  
Ответить с цитированием
NARKOZ
 
Аватар для NARKOZ

Регистрация: Jul 2009
Сообщений: 9
Attention sos

Все сделал, при тестировании все работает, но после экспорта облом


Последний раз редактировалось NARKOZ; 02.08.2009 в 04:15.
Создать новую тему Ответ Часовой пояс GMT +4, время: 00:52.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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