Просмотр полной версии : вынесение On (Press) в *.as файл
Доброго времени суток.
Проблемка такая:
У меня есть куча всяческих банеров, мне надо прописать в каждый ф-цию открытия URL в зависимости от параметра передаваемого в FlashVars.
<PARAM NAME=FlashVars VALUE="link=http://www.name.com">
А в отдельном *.as файле (например UrlFunc.as) вынести такую ф-цию
_root.On (press)
{
_root.GoToUrl("_blank", _root._level0.link);
}
И в каждом мувике подключать её через
import UrlFunc;
Будет ли такое работать? Сейчас Flash-a нет под рукой чтобы проверить?
Хочу просто узнать мнение проффесионалов.
Заранее спасибо.
Я прошу прощения но
ХАХАХАХАХАХА
ответ
не будет.
Fernando Costa
25.10.2007, 19:04
используйте нормальные кнопочные события (onPress, onRelease), там все можно нормально подключать и имплементить. А ТАКИЕ извращения это конечно глупость.
2 Nirth :
:quiet: Замечательный ответ.
А существует ли какое-нибудь изящное решение, чтобы внося минимум изменений в FLA файл (желательно просто import XXXXXX;) наследовалась данная функциональность ?
Ладно, не буду над вами измыватся. просто по злорадствую
_root.On (press) //метода _root.on не существует, кроме того у рута нету мышиных событий
{
_root.GoToUrl("_blank", _root._level0.link); //метода _root.GoToUrl тоже нету, кроме того свойства _root._level0 тоже нету
}
//Код:
import UrlFunc; //эта строчка импортирует класс UrlFunc.as (именно класс)
Первый кадр главного таймлайна:
include "UrlFunc.as";
var bannerButton:MovieClip = createRectangleMovieClip("hitButton", this, this.getNextHighestDepth(), 0, 0, Stage.width, Stage.height, 0xff0000, 0);
bannerButton.onRelease = function()
{
goToURL(this._parent.link);
}
function createRectangleMovieClip(newName:String, parentClip:MovieClip, parentClipDepth:Number, newX:Number, newY:Number, newWidth:Number, newHeight:Number, newColor:Number, newAlpha:Number):MovieClip
{
var newClip:MovieClip = parentClip.createEmptyMovieClip(newName, parentClipDepth);
newClip.beginFill(newColor);
newClip.moveTo(0, 0);
newClip.lineTo(newWidth, 0);
newClip.lineTo(newWidth, newHeight);
newClip.lineTo(0, newHeight);
newClip.lineTo(0, 0);
newClip.endFill();
newClip._x = newX;
newClip._y = newY;
newClip._alpha = newAlpha;
return newClip;
}
UrlFunc.as:
function goToURL(url:String):Void
{
getURL(url, "_blank");
}
PS:
Только вот, хоть убейте, не могу понять, зачем это выносить в отдельный файл...
PS:
Только вот, хоть убейте, не могу понять, зачем это выносить в отдельный файл...
Да, согласен. Идея была очень дурацкая.
До меня дошло как лучше все это реализовать.
Я делаю пустой мувик, куда параметром передаю мувик с баннером, и линк, который будет открываться при нажатии. Загружаю баннер, и вешаю на мувик с ним событие при клике.
Единственная для меня сейчас загвоздка: как мне растянуть мой мувик по размерам загружаемого? (width, height)
terbooter
26.10.2007, 14:09
решетку у инклуда забыли (#include)
И ";" нельзя ставить в строке с include
Ребят, я бы попросил Вас обсуждать здесь не синтаксис, а логику.
Как мне в один мувик подгрузить другой, так, чтобы родитель унаследовал все параметры загружаемого? (размеры, скорость и т.д.)
Ребят, я бы попросил Вас обсуждать здесь не синтаксис, а логику. Для логики есть хороший раздел "флейм", а без правильного синтаксиса код работать не будет, хоть тресни.
Как мне в один мувик подгрузить другой, так, чтобы родитель унаследовал все параметры загружаемого? (размеры, скорость и т.д.)
Какая скорость может быть у клипа??
Любые действия с клипом можно делать только после его загрузки.
Читайте про MovieClipLoader, событие onLoadInit.
Далее - клип, в который вы грузите флешку, пустой. Его ширина и высота 0. Если не трогать масштаб, то после загрузки высота и ширина станут такими, как надо.
Ребят, я бы попросил Вас обсуждать здесь не синтаксис, а логику.
Да чего? Пусть поправляют. А то я же тебе написал тоже без тестов во Флеше. А вдруг вы так примете для себя, а потом будете мучаться. На то и форум.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.