Последнее обновление:
August 28, 2017

Есть мысль... Жми, напиши!
полезныные скриптики

  • Рубрик нет

События as3

Написал небоьшой класс, для удобства работы с событиями:
[cc escaped=«true» lang=»actionscript3″]package CustomEvent {
import flash.events.Event;
public class CustomEvent extends Event {
public static const CUSTOM_EVENT : String = ‘onCustomEvent’;
public function CustomEvent ( inType : String = CUSTOM_EVENT, inParams : Object = null ) {
super( inType, true, true );
m_type = inType;
m_params = inParams;
}
private var m_type : String = CUSTOM_EVENT;
private var m_params […]

Views :

1100

Слайд шоу as3

Создаём мувик mainimg, куда будем скидывать все фотки для слайд шоу:
mainimg.addChildAt(event.target.content, 0);
Теперь о таймеру выполняем код:
mainimg.addChild(new MovieClip());
mainimg.swapChildrenAt(0, mainimg.numChildren-1);
mainimg.removeChildAt(0);
всё =)

Views :

1048

as3 изменение кодировки

Views :

1107

TextField embedFonts (внедрение шрифтов as3)

Для нормальной работы тегов b i нужно найти шрифты с соответствующими начертаниями, к примеру MyriadPro-Regular — с обычным MyriadPro-Bold — с жирным
Подгружается шрифт во флэшку следующим образом:
[cc lang=»ActionScript3″] [Embed ( source = «MyriadPro-Regular.ttf»,fontName = «Myriad Pro», fontStyle = «regular», fontWeight = «regular», mimeType = «application/x-font-truetype») ]
private var MyriadPro:Class;
[Embed […]

Views :

1450

Добавить экземпляр класса подгружаемого мувика

Пусть есть флешка library.swf и в её библиотеке есть мувик связанный с классом MC
(Свойства, галочка Экспорт для ActionScript)
Есть другая флешка loader.swf которая подгружает флешку library.swf.

package {
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.net.URLRequest;
import flash.system.ApplicationDomain;

public class loader extends Sprite {
var e:Event;
var a:ApplicationDomain;
public function loader() {
[…]

Views :

1950

Сохранить MovieClip как SWF файл на сервере.

Взято с forum.vingrad.ru/
[cc lang=»actionscript»]
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.utils.ByteArray;
var ByteLoader:URLLoader;
var ByteConverter:Loader;
var ByteConverter2:Loader;
var FileRequest:URLRequest;
var ba:ByteArray = new ByteArray;
function convert(event:Event)
{
//function BytesExample (event:Event) {
ByteLoader = new URLLoader();
ByteLoader.dataFormat = URLLoaderDataFormat.BINARY;
ByteLoader.addEventListener (Event.COMPLETE, onBytesLoaded);
FileRequest = new URLRequest («mov.swf»);
ByteLoader.load (FileRequest);
//}
function onBytesLoaded (evt:Event)
{
ByteConverter = new Loader();
ByteConverter.contentLoaderInfo.addEventListener (Event.COMPLETE, onConvertFinished);
ByteConverter.loadBytes (ByteLoader.data);
ba.writeBytes(ByteLoader.data);
//urla
var url_req:URLRequest = new URLRequest(«http://127.0.0.1/img_create.php»);
[…]

Views :

1024

Изменение содержимого ячеек DataGrid на примере создания кнопки. (CellRender DataGrid)

[b]1.[/b] Создаем новую папку
[b]2.[/b] Во флэш новый документ, сохранить в тока что созданной папке
[b]3.[/b] Кинуть на сцену компонент — DataGrid и Button в библиотеку.
[b]4.[/b] В первом кадре код:
var sampleItem1:Object = { Name:»John Alpha»,     Number:»555-123-0101″, Email:»jalpha@fictitious.com» };
var sampleItem2:Object = { Name:»Mary Bravo»,     Number:»555-372-3322″, Email:»mbravo@fictitious.com» };
var sampleItem3:Object = { Name:»Trevor Gamma», Number:»555-485-1212″, […]

Views :

1142

Передача параметров через EventHandler

Как известно по умолчанию EventHandler не может передовать параметры обработчику,
НО мы можем задать промежуточный обработчки в который уже передадим целевой обработчик и параметры .
Код промежуточного обработчика:
var delegate:Function = function(scope:Object, func:Function, …rest):Function {
return function(…args):void {
func.apply(scope, args.concat(rest));
}
}
Пример использования:
myButton.addEventListener(MouseEvent.CLICK, delegate(this,mouseClickHandler, «param1» , «param2»)); //—параметров может быть сколько угодно
Целевой обработчик:
private […]

Views :

1017

баг с getCharBoundaries

Вот мой обход бага:
Была задача — некоторую фразу в прямоугольную рамку, обрамляю эту фразу в «|»
Собственно код:

//—создаем текстовое поле, вносим текст
var tf:TextField = new TextField();
tf.htmlText = ‘ К счастью, |баги емае| можно обойти’;
tf.autoSize=TextFieldAutoSize.CENTER;
tf.x=0;
tf.y=0;
addChild(tf);
//—пошло самое интересное
var s:String;
s=tf.text;
var p1:int=s.indexOf(«|»); //—нашли индекс символа начала рамки
[…]

Views :

710

Загрузить swf на сцену as3

function onLoadModulComplete(e:Event):void {
trace(‘загрузили’);
addChild(e.target.content);
}
function loadme(url:String):void {
var moduleloader :Loader = new Loader();
moduleloader.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadModulComplete);
moduleloader.load(new URLRequest(url));
}

Views :

4729