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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.05.2013, 17:15
dvrbear вне форума Посмотреть профиль Отправить личное сообщение для dvrbear Найти все сообщения от dvrbear
  № 1  
Ответить с цитированием
dvrbear
[+1.3 06.03.12]
 
Аватар для dvrbear

Регистрация: Oct 2003
Адрес: Moldova, Kishinev
Сообщений: 133
Отправить сообщение для dvrbear с помощью ICQ Отправить сообщение для dvrbear с помощью Skype™
По умолчанию Дублирование и управление через родительский класс

Не буду приводить разные попытки добиться желаемого, дабы не сбивать с толку.
Цели такая:

Необходимо размножить объект "A" в котором вложен некий мувик "apple"
например:
Код AS3:
var B1:A = new A();
var B2:A = new A();
И затем при изменение ширины A.apple.width, сделать так, чтоб ширина apple автоматом изменялась в B1 и B2
__________________
http://apa-noua.com/portfolio

Старый 16.05.2013, 17:28
dvrbear вне форума Посмотреть профиль Отправить личное сообщение для dvrbear Найти все сообщения от dvrbear
  № 2  
Ответить с цитированием
dvrbear
[+1.3 06.03.12]
 
Аватар для dvrbear

Регистрация: Oct 2003
Адрес: Moldova, Kishinev
Сообщений: 133
Отправить сообщение для dvrbear с помощью ICQ Отправить сообщение для dvrbear с помощью Skype™
да вот пробовал со static
придерается когда элементарно пытаюсь запросить через
trace(B1.apple.width)

Добавлено через 4 минуты
Код AS3:
package com
{
	public class BHero
	{
		public static var num:Number = 10;
 
		public function BHero()  
		{
 
		}
	}
}
затем в главной
Код AS3:
import com.BHero;
. . . . .
private var a:BHero;
и
Код AS3:
a = new BHero();
BHero.num = 15;
trace(a.num);
trace(a.num); сразу помечает красным крестиков - мол нельзя
пробовал trace(a.parent.num);

быть может оно и меняется но обратиться немогу
__________________
http://apa-noua.com/portfolio

Старый 16.05.2013, 17:59
Александр Мостовой вне форума Посмотреть профиль Отправить личное сообщение для Александр Мостовой Посетить домашнюю страницу Александр Мостовой Найти все сообщения от Александр Мостовой
  № 3  
Ответить с цитированием
Александр Мостовой
 
Аватар для Александр Мостовой

Регистрация: Sep 2001
Адрес: Харьков
Сообщений: 305
Отправить сообщение для Александр Мостовой с помощью ICQ Отправить сообщение для Александр Мостовой с помощью Skype™
Цитата:
trace(a.num); сразу помечает красным крестиков - мол нельзя
Статические свойства не принадлежат экземпляру, они принадлежать конструктору, но могут быть доступны внутри класса BHero без ссылки на конструктор.


Вам необхоидмо завести виртуальное свойства у объекта данных (статическое или нет зависит от вашего похода)
Код AS3:
private function set appleWidth (value:Number):void
{
    b1.apple.width = value;
    b2.apple.width = value;
}
либо, что лучше, рассылать события
Код AS3:
private function set appleWidth (value:Number):void
{
    dispatchEvent(new Event(RESIZE));
}
А уже внутри класса A подписаться на это событие и изменять свои внутренние свойства b1.apple.width
__________________
...

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

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
ProcXel.A, dvrbear, один и тот же экранный объект (у нас это apple) может находиться на экране лишь в единственном экземпляре. Поэтому как ни крути, но apple у каждого B1, B2 будет свой. Никакой статики.
__________________
Поймай яблоко 2!

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

модератор форума
Регистрация: May 2001
Адрес: Одесса
Сообщений: 4,869
Записей в блоге: 4
ProcXel.A, ага, это я пока писал, тема двинула дальше )
__________________
Поймай яблоко 2!

Старый 16.05.2013, 18:36
dvrbear вне форума Посмотреть профиль Отправить личное сообщение для dvrbear Найти все сообщения от dvrbear
  № 6  
Ответить с цитированием
dvrbear
[+1.3 06.03.12]
 
Аватар для dvrbear

Регистрация: Oct 2003
Адрес: Moldova, Kishinev
Сообщений: 133
Отправить сообщение для dvrbear с помощью ICQ Отправить сообщение для dvrbear с помощью Skype™
Спасибо всем за примеры, пробежавшись глазами вижу что должно работать, но не так как я всетаки планировал.

Zebestov, значит моя идея не сработает, даже если работать с базовым классом?

Не хотелось бы каждый раз всем "детям" говорить что делать - хотелось бы в одном объекте менять свойства и чтоб они автоматически менялись в его "клонах"

п.с. - почему не удобны приведенные примеры? - потому как я планирую один и тотже объект распихивать по разным углам и не создавать их на одном уровне кода - поэтому потом будет сложно до каждого из них достучаться...
__________________
http://apa-noua.com/portfolio

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

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

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


 


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


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