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

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

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

Регистрация: Aug 2010
Сообщений: 4
Question Импорт клипа программно. Проблема с кнопками.

Доброго времени суток!
Суть проблемы:
Есть клип "symbol", подгружаемый в мувик. В нем есть кнопка "button". Так вот эта кнопка работает, если подгрузить клип заранее:

Код AS1/AS2:
_root.attachMovie("symbol","new_symbol",1,{_x:100,_y:100});
new_symbol.button.onRelease=function():Void{
	trace("ok");
}
Но почему-то не работает, если клип подгрузить по событию (например, нажатию кнопки "real")
Код AS1/AS2:
real.onRelease = function():Void{
	_root.attachMovie("symbol","new_symbol",1,{_x:100,_y:100});
}
new_symbol.button.onRelease=function():Void{
	trace("ok");
}
Почему так? Как это можно исправить?
Спасибо.

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

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

Старый 19.08.2010, 13:52
iluha вне форума Посмотреть профиль Отправить личное сообщение для iluha Найти все сообщения от iluha
  № 3  
Ответить с цитированием
iluha

Регистрация: Aug 2010
Сообщений: 4
Спасибо за ответ.
А как грамотно сделать, если нужно именно по событию создать мувик?

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

Регистрация: Feb 2008
Сообщений: 560
В обработчике onRelese, после того как приаттачили мувик, вешаете на него свой onRelease. Примерно так:

Код AS1/AS2:
 
real.onRelease = function():Void{
	_root.attachMovie("symbol","new_symbol",1,{_x:100,_y:100});
	new_symbol.button.onRelease=function():Void{
		trace("ok");
	}
}

Старый 19.08.2010, 14:12
iluha вне форума Посмотреть профиль Отправить личное сообщение для iluha Найти все сообщения от iluha
  № 5  
Ответить с цитированием
iluha

Регистрация: Aug 2010
Сообщений: 4
ого, спасибо!
пойду читать теорию.

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
правильнее так
Код AS1/AS2:
release=function():Void{
	trace("ok");
}
 
real.onRelease = function():Void{
	_root.attachMovie("symbol","new_symbol",1,{_x:100,_y:100});
	new_symbol.button.onRelease=release;
}
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 19.08.2010, 15:40
iluha вне форума Посмотреть профиль Отправить личное сообщение для iluha Найти все сообщения от iluha
  № 7  
Ответить с цитированием
iluha

Регистрация: Aug 2010
Сообщений: 4
Спасибо за ответы!
Еще одна маленькая проблема... похожая, по-видимому, поэтому тему создавать не стал. Сижу, голову ломаю:
есть checkbox "box1" на root. Есть checkbox "box2" в клипе "clip" . И box1, и box2, как известно, изначально не выделены. (real - кнопка)
Код AS1/AS2:
box1.selected = true;
real.onRelease = function():Void{
	_root.attachMovie("clip","new_clip",1,{_x:Stage.width/2, _y:Stage.height/2});
	new_clip.box2.selected = true;
	trace(new_clip.box2.selected);
}
Значения свойства selected для box1 и box2 меняют значения на true. Но box1 меняет вид, а box2 нет Почему?
Пытался что-то сделать с помощью функции redraw - ничего.
Было бы замечательно, если бы кто-нибудь дал ссылку на доступную и подробную инфу по компонентам (в книге какой-нибудь или еще где).

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

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

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


 


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


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