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

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

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

Регистрация: Apr 2009
Сообщений: 6
По умолчанию к attachMovie не могу приклеить событие

Привет! Создаю класс, все работает нормально, экземпляры создаются и работают
Код:
pSelectGroup.prototype = new MovieClip();
function pSelectGroup() {
	this.Name="";
}
Object.registerClass("CSelectGroup", pSelectGroup);
хочу к нему прицепить надпись

Код:
pSelectGroup.prototype.SetVendors = function(val){
  this.attachMovie("mcVendorCaption","vendorCaption",0);
  this["vendorCaption"].mcvCaption.text = val;
опять все отлично, надписи на экзеплярах появляются, КАК К ЭТИМ НАДПИСЯМ ПРИЦЕПИТЬ СОБЫТИЕ!!!

Код:
pSelectGroup.prototype.SetVendors = function(val){
  this.attachMovie("mcVendorCaption","vendorCaption",0);
  this["vendorCaption"].mcvCaption.text = val;
  this["vendorCaption"].onPress = function() {
    trace("asdf");			
  }
}
этот вариант нивкакую неработает!!!


Последний раз редактировалось Staser007; 15.05.2009 в 11:57.
Старый 15.05.2009, 12:13
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Код AS1/AS2:
#initclip
function pSelectGroup () {
	this.Name = "";
	this.SetVendors ("ffffff")
}
pSelectGroup.prototype = new MovieClip ();
Object.registerClass ("CSelectGroup", pSelectGroup);
pSelectGroup.prototype.SetVendors = function (val) {
	var mc = this.attachMovie ("mcVendorCaption", "vendorCaption", 0);
	mc.mcvCaption.text = val;
	mc.onPress = this.press;
};
pSelectGroup.prototype.press = function () {
	trace ("asdf");
};
#endinitclip
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 15.05.2009, 12:27
Staser007 вне форума Посмотреть профиль Отправить личное сообщение для Staser007 Найти все сообщения от Staser007
  № 3  
Ответить с цитированием
Staser007

Регистрация: Apr 2009
Сообщений: 6
кажется понял, попробую

Добавлено через 20 минут
Неработает, что такое
Код:
this.SetVendors ("ffffff")
Давлю на мышь сильнее, все-равно неработает


Последний раз редактировалось Staser007; 15.05.2009 в 12:52.
Старый 15.05.2009, 13:31
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 4  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

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

Старый 15.05.2009, 13:42
akc.666 вне форума Посмотреть профиль Отправить личное сообщение для akc.666 Найти все сообщения от akc.666
  № 5  
Ответить с цитированием
akc.666

Регистрация: Aug 2008
Адрес: Kiev, Ukraine
Сообщений: 7
Отправить сообщение для akc.666 с помощью ICQ
Была подобная проблема... Попробуйте так:

Код AS1/AS2:
#initclip
function pSelectGroup () {
	this.Name = "";
	this.SetVendors ("ffffff")
}
pSelectGroup.prototype = new MovieClip ();
Object.registerClass ("CSelectGroup", pSelectGroup);
pSelectGroup.prototype.SetVendors = function (val) {
	var mc = this.attachMovie ("mcVendorCaption", "vendorCaption", 0);
	mc.mcvCaption.text = val;
	this.onEnterFrame = onEnterFrameHendler;
};
pSelectGroup.prototype.press = function () {
	trace ("asdf");
};
pSelectGroup.prototype.onEnterFrameHendler= function () {
	delete this.onEnterFrame;
	this.vendorCaption.onPress = this.press;
};
#endinitclip

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

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

Старый 15.05.2009, 13:55
Staser007 вне форума Посмотреть профиль Отправить личное сообщение для Staser007 Найти все сообщения от Staser007
  № 7  
Ответить с цитированием
Staser007

Регистрация: Apr 2009
Сообщений: 6
Исходник привязан к сайту, загрузка с сайта идет
могу прописать абсолютные пути.

Добавлено через 2 минуты

тут накосячено уже немнго, я пробую варианты
должен быть класс-окно с массивом vendoro в

кликая на vendora хочу событие


Код:
function pSelectGroup() {
	this._alpha = 0;
	this._xscale = 0;
	this._yscale = 0;
//	this.process = 0;
	this.Caption="";
	this.process="";
	this.SetVendors ("ffffff");
}
pSelectGroup.prototype = new MovieClip();
Object.registerClass("CSelectGroup", pSelectGroup);
pSelectGroup.prototype.SetVendors = function(val){
	v = val.split(",");
	j = 0;
	
//	for(j=0;j<v.length;j++){
//		this.attachMovie("mcVendorCaption","vendorCaption"+j,j,{_x:10,_y:9*j+20});
		var mc = this.attachMovie("mcVendorCaption","vendorCaption"+j,1001,{_x:10,_y:9*j+20});
		mc = this["vendorCaption"+j].mcvCaption.text = v[j];
		mc.onRollOver = function(){
			trace ("asdf");
		}
//	}
}

pSelectGroup.prototype.onEnterFrame = function(){
	if(this.process=="show"){
		if(this._alpha<100){
			this._alpha+=20;this._xscale+=20;this._yscale+=20;
		}else{
			this.process="";
			_root.EndShow();
		}
	}
}
pSelectGroup.prototype.onPress = function(){
	_root["Grp"+_root.activeClip].swapDepths(_root.cats+_root.activeClip);
	_root.activeClip = this.id;
	this.swapDepths(1000);
}
pSelectGroup.prototype.SetID = function(id){
	this.id = id;
}
pSelectGroup.prototype.SetCaption = function(str){
	this.Caption = str;
	this.bCaption.text = str;
}
Добавлено через 15 минут
Я тоже думаю ошибка в том что я гдето чтото не там написал, сам я в AS почти новичек, но программирую уже 15 лет, начал писать на AS во флеше и постоянно удивляюсь как в нем все сложно, наверно придется все-равно платить флешерам.
здесь http://www.elitasvet.ru/index_page_80.html приклике на производителя нужно вставить отклик


Последний раз редактировалось Staser007; 15.05.2009 в 14:18.
Старый 15.05.2009, 15:24
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 8  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
>>постоянно удивляюсь как в нем все сложно
может ты сам себе жизнь усложняешь, в чем нужда прикручивать класс через #initclip/registerClass ?
флеш уже лет пять как поддреживает нормальную запись
твой класс, например, может и так выглядеть:
Код AS1/AS2:
class CSelectGroup extends MovieClip 
{
	var Name = "";
 
	function SetVendors(val)
	{
		var mc = this.attachMovie ("mcVendorCaption", "vendorCaption", 0);
		mc.mcvCaption.text = val;
		mc.onPress = function()
		{
			trace ("asdf");
		}
	}
}

Старый 15.05.2009, 15:42
Staser007 вне форума Посмотреть профиль Отправить личное сообщение для Staser007 Найти все сообщения от Staser007
  № 9  
Ответить с цитированием
Staser007

Регистрация: Apr 2009
Сообщений: 6
Значит я ошибся учебником. Спасибо выкину его на свалку. В этом коде все понятно еще бы работал!!!
Напиши еще заодно как экземпляр класса создать?

Добавлено через 11 минут
class CSelectGroup extends MovieClip - Syntax error.


Последний раз редактировалось Staser007; 15.05.2009 в 15:45.
Старый 15.05.2009, 15:59
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 10  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
код в файле CSelectGroup.as
в библиотеке символ MovieClip с установками id= "test" и Class="CSelectGroup"
код в кадре
Код AS1/AS2:
var test:CSelectGroup=CSelectGroup(this.attachMovie("test","clip",0));
test.SetVendors("O_O");
руками положенный на сцену символ тоже будет экземпляром CSelectGroup

вариант 2: в библиотеке не нужно ничего (mcVendorCaption нужен, конечно)
код создания экземпляра:
Код AS1/AS2:
var test:CSelectGroup=this.createEmptyMovieClip("clip",0);
test.__proto__=CSelectGroup.prototype;
test.SetVendors("O_O");

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

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

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


 


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


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