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

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

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

Регистрация: Jan 2006
Сообщений: 66
По умолчанию Еще раз о наследовании

Доброго времени суток, знатоки АС3
В общем такой вопрос возник.
Существует класс (назовем его TextButton), который наследуется от MovieClip, еще есть два мувика, которым в "Base Class" (это который в дизайн тайме прописывается во время создания мувика и присвоения ему имени для AS) прописан TextButton. Так вот! Если в этих мувиках будут одинаковые названия у вложенных клипов, то будет появлятся ошибка типа
Цитата:
1152: A conflict exists with inherited definition mytools:TextButton.bg_mc in namespace public.
И самое интересное! Если этим клипам не создавать реальный класс (т.е. прописать название, а файл не создавать) то все работает, а если создать файл даже с простым описанием package и названием класса, то будет ошибка. Вот такие пироги...
Это нормально? Или мне в коде у себя где-то ошибку искать?

Спасибо!
__________________
Делаем так и перетакивать не будем!


Последний раз редактировалось LEXiy; 28.08.2010 в 16:49.
Старый 25.08.2010, 22:47
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 2  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Исходник в стутию! А то, чую, про разные вещи будем говорить

Старый 25.08.2010, 22:49
LEXiy вне форума Посмотреть профиль Отправить личное сообщение для LEXiy Посетить домашнюю страницу LEXiy Найти все сообщения от LEXiy
  № 3  
Ответить с цитированием
LEXiy
 
Аватар для LEXiy

Регистрация: Jan 2006
Сообщений: 66
Блин, этого я и боялся... Ладно буду готовить экзампл. А то там слишком много лишнего кода.
__________________
Делаем так и перетакивать не будем!

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

блогер
Регистрация: Jun 2005
Адрес: Toronto
Сообщений: 6,599
Записей в блоге: 17
Вы имеете ввиду, что у Вас в TextButton есть вложенный клип с именем (instance name) bg_mc и в классе BaseClass extends TextButton есть такой же клип?

Flash IDE создаёт поле с именем клипа (instance name), а класс мувиклипа динамический, поэтому допускаются обращения mc.your_clip_name. Но это неприятно, на мой взгляд. Вот из за такого пирога когда у двух клипов есть внутри клип с одним именем у них возникает конфликт переменных - вроде имя клипа есть в ребёнке и поле класса есть у него с тем же именем - и клип с таким же именем в родителе, и там же поле класса с этим именем.
Либо меняйте имя, либо добавляйте их с помощью AS.

Старый 26.08.2010, 19:16
LEXiy вне форума Посмотреть профиль Отправить личное сообщение для LEXiy Посетить домашнюю страницу LEXiy Найти все сообщения от LEXiy
  № 5  
Ответить с цитированием
LEXiy
 
Аватар для LEXiy

Регистрация: Jan 2006
Сообщений: 66
Не-не...
Не совсем так.
Сегодня постараюсь пример сделать
__________________
Делаем так и перетакивать не будем!

Старый 26.08.2010, 19:48
LEXiy вне форума Посмотреть профиль Отправить личное сообщение для LEXiy Посетить домашнюю страницу LEXiy Найти все сообщения от LEXiy
  № 6  
Ответить с цитированием
LEXiy
 
Аватар для LEXiy

Регистрация: Jan 2006
Сообщений: 66
Исходник в студии!
Я тут сам немного поразбирался и получилось следующее:
Если MainButton и HSButton не создавать, то работает, и если оба создать, то работает. А вот если один создать, а другой нет - косячок-с всплывает. Интересная штука.
По идее, если файл класса не существует, компилятор создает его автоматически пустым, наследующимся от класса прописанного в поле "Base Class". А значит разницы не должно быть... ну эт я так думаю.
Вложения
Тип файла: zip ex2.zip (87.9 Кб, 30 просмотров)
__________________
Делаем так и перетакивать не будем!

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

Регистрация: Jan 2006
Сообщений: 66
...хоть бы пример кто посмотрел...
__________________
Делаем так и перетакивать не будем!

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Цитата:
Сообщение от LEXiy Посмотреть сообщение
...хоть бы пример кто посмотрел...
У многих тут стоит CS3, так что ваш исходник они не посмотрят.
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

блогер
Регистрация: Mar 2008
Адрес: Днепропетровск
Сообщений: 1,783
Записей в блоге: 3
Я вообще ничего не понял.

Старый 28.08.2010, 16:46
LEXiy вне форума Посмотреть профиль Отправить личное сообщение для LEXiy Посетить домашнюю страницу LEXiy Найти все сообщения от LEXiy
  № 10  
Ответить с цитированием
LEXiy
 
Аватар для LEXiy

Регистрация: Jan 2006
Сообщений: 66
В примере все есть.
Да только этот вопрос только для интереса моего остался.

Добавлено через 41 секунду
Ааааа... Вот как
Понятно
__________________
Делаем так и перетакивать не будем!

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

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

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


 


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


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