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

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

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

Регистрация: Jan 2007
Сообщений: 3
Question и опять мувиклипы = )

пробывал по разному, фак смотрел, поиск пользовал, наверно как то не так пользовал, но ничо не получается. непонимаю как надо сделать...
проблема следующая (это уже не раз обсуждалось, но не получается и все) - нужно каждому динамически добавляемому мувиклипу на событие onMouseDown прописать свой код. ну не получается и все тут... = ((((
код из мувиклипа:
Код:
gallery_names = new Array();
movie_names = new Array();
names_xml = new XML();
names_xml.onLoad = function(status) {
	if (status) {
		gal_menu_create();
	}
};
names_xml.load("dir.php");
function gal_menu_create() {
     for (i=0; i<names_xml.firstChild.childNodes.length; i++) {
          gallery_names[names_xml.firstChild.childNodes[i].attributes.name] = names_xml.firstChild.childNodes[i].attributes.src;
          movie_names.push(attachMovie("movie_btn", "btn"+i, this.getNextHighestDepth(), {_x:0, _y:21*i+21, _alpha:0}));

          movie_names[i].gals_txt.text = names_xml.firstChild.childNodes[i].attributes.name;          
          movie_names[i].onMouseDown = function() {
               gallery_txt.text = this.gals_txt.text;
          };
     }
}
помогите. плииз! = )
Спасибо.


Последний раз редактировалось ing8ar; 20.01.2007 в 03:52.
Старый 20.01.2007, 03:59
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 2  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>нужно каждому динамически добавляемому мувиклипу на событие onMouseDown..

не анализировал твой код (не в состоянии,сори), но событие onMouseDown наступает при любом нажатии клавиши (на мувике или где угодно)..
пробуй onPress/onRelease приспособить для своих нужд..

Старый 20.01.2007, 04:56
pkfun вне форума Посмотреть профиль Отправить личное сообщение для pkfun Посетить домашнюю страницу pkfun Найти все сообщения от pkfun
  № 3  
Ответить с цитированием
pkfun

Регистрация: Feb 2006
Сообщений: 580
Код:
movie_names[i].onMouseDown = function() {
               gallery_txt.text = this.gals_txt.text;
          };
Вот, в вашем коде как раз это и делается.

Старый 20.01.2007, 09:36
ing8ar вне форума Посмотреть профиль Отправить личное сообщение для ing8ar Найти все сообщения от ing8ar
  № 4  
Ответить с цитированием
ing8ar

Регистрация: Jan 2007
Сообщений: 3
Цитата:
не анализировал твой код (не в состоянии,сори), но событие onMouseDown наступает при любом нажатии клавиши (на мувике или где угодно)..
пробуй onPress/onRelease приспособить для своих нужд..
пробывал вместо onMouseDown, onPress и onRelease, вообще событие не наступает, сколько не тыкал...
Цитата:
Код:
movie_names[i].onMouseDown = function() {
               gallery_txt.text = this.gals_txt.text;
          };
Вот, в вашем коде как раз это и делается.
реализуется, но не верно, при нажатии на любой мувиклип, из созданых, записывается значение первого, если пихнуть туды trace(this) то после нажатия выводит все имена мувиклипов.

гм, непойму, мож я чо не так делаю, что вполне может быть, т.к. за флеш сел два дня назад, но, если вместо -
Код:
movie_names[i].onMouseDown = function() {
               gallery_txt.text = this.gals_txt.text;
          };
пишу -
Код:
		movie_names[i].onPress = function() {
			trace(this);
			gallery_txt.text = this.gals_txt.text;
		};
или
Код:
		movie_names[i].onRelease = function() {
			trace(this);
			gallery_txt.text = this.gals_txt.text;
		};
никак не хочет работать, трейс не вызывается, ничо не происходит, как быть?

пробывал и так -
Код:
		movie_names[i].onPress = on_press;
	}
}
function on_press() {
	trace(this);
	gallery_txt.text = this.gals_txt.text;
}
просто при клике по любому из мувиклипов не вызывается событие onPress или onRelease. с чем это может быть связано? динамически добавляемый мувиклип, представляет из себя серую полоску с динамическим текстом, растянутым на всю полоску, можт в этом дело?


Последний раз редактировалось ing8ar; 20.01.2007 в 09:51.
Старый 20.01.2007, 11:50
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 5  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
1. понятно почему все клипы разом реагируют на onMouseDown,
потому что это так и есть (см silin пост)
2. непонятно почему не работает onPress,
предлагаю выход, вы упрощаете проект кидаете его сюда а мы уж разберемся...
__________________
"We Are The Champions My Friends!" Queen

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

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>просто при клике по любому из мувиклипов не вызывается событие onPress или onRelease.
такое может быть, если все это добро лежит в другом мцвике, у которого определен хотя бы один из мышиных обработчиков..
тогда тебе действительно нужен onMouseDown, но с проверкой hitTest (на ком мышь при нажатии)
согласен с CorC: зачем гадать, давай неработающий пример проблемы..

Старый 20.01.2007, 17:58
ing8ar вне форума Посмотреть профиль Отправить личное сообщение для ing8ar Найти все сообщения от ing8ar
  № 7  
Ответить с цитированием
ing8ar

Регистрация: Jan 2007
Сообщений: 3
silin
Спасибо! действительно, в этом мувике есть события на мышку, и они перекрывают мышыные события на вложеном мувике. нашол вроде инфу по хиттесту, буду глядеть . Спасибо! = )
если чо, то еще спрошу = ) ...

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

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

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


 


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


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