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

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

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

Регистрация: Jun 2006
Сообщений: 60
По умолчанию работа с массивом в ООП

Привет! Вот так проблема у меня, подскажите, что не так? Есть класс "My_class.as", прикрепляю в библиотеке к символу "simbol" наследование свойств класса, при нажатии на символ в массив добавляю новый элемент, всё отлично, но если вызываю еще один символ из библиотеки, то он работает с тем же массивом что и первый, то есть массив создается не для каждого объекта класса, а общий на всех. Как быть?
Код:
//My_class.as
class My_class extends MovieClip {
	public var My_Array:Array = new Array();
	public function My_class() {
		this.onPress = function():Void  {
			this.My_Array.push("new Array"+this.My_Array.length);
			trace(this.My_Array.length);
			trace(this.My_Array[this.My_Array.length-1]);
		};
	}
}
Код:
//FLA.fla
attachMovie("simbol","simbol1",1)
	simbol1._x=300;
	simbol1._y=200;
attachMovie("simbol","simbol2",2)
	simbol2._x=100;
	simbol2._y=200;

Старый 29.05.2007, 01:56
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
При описания свойства, надо задать только его тип.
Код:
public var My_Array:Array = null;
А создание нового массива надо делать в теле конструктора класса.
Код:
public function My_class() {
	My_Array = new Array();
	...
Кстати, только класс может начинаться с заглавной, а названия методов и свойств пишут с прописной. То есть не My_Array, а my_Array.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Sep 2002
Сообщений: 30,787
Да и подчеркивания тоже лишние.

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

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

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


 


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


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