add multiple buttons addListerner AS3
import flash.display.MovieClip;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.events.MouseEvent;
import flash.text.TextFormat;
for (var btn:int = 1; btn < 7; btn++) {
this["spot" + btn].buttonMode = true;
this["spot" + btn].addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
this["spot" + btn].addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);
}
function onMouseOver(event:MouseEvent):void
{event.currentTarget.play();}
function onMouseOut(event:MouseEvent):void
{event.currentTarget.gotoAndStop(1);}
getChildByName
var i;
for (i=1;i<15 i="" nbsp="" p=""> labelArr.push("ins"+i);
}
for(i=0; i
MovieClip(root).s.getChildByName(tempName).visible = false;
}
for(i=0; i
MovieClip(root).s.getChildByName(tempName).visible = true;
}
var button:MovieClip;
for (var i=1; i<7 btn="" button.addeventlistener="" button.buttonmode="true;" button="MovieClip(getChildByName(" code="" i="" objclick="" objout="" objover="" ouseevent.click="" ouseevent.roll_out="" ouseevent.roll_over="">7>
push multiple buttons in array
var labelArr:Array = new Array();
for (i=1;i<50;i++){
labelArr.push("button"+i);
}
for(var i=0; i<labelArr.length; i++)
{ trace(labelArr[i]);
}
read more : https://github.com/asimkh/projects
format your code: http://codeformatter.blogspot.ae/
Tube Teaching: Add Interactive Chapters to a YouTube Video
AS3 and Jquery flash plugin
function() {
jQuery('#tabs').tabs();
var params = parseQueryString();
var user = params["user"]
$('#tab-5').flash({swf:'swf/flash.swf',height:525,width:928,wmode:'transparent',flashvars: { pma3 : user}});
}
)
AS3
import flash.events.MouseEvent;
import flash.net.URLRequest;
import flash.net.navigateToURL;
import flash.external.ExternalInterface;
click_btn.addEventListener(MouseEvent.MOUSE_UP, onClick);
click_btn.buttonMode = true;
function onClick(e:MouseEvent):void {
var pmaUser:String = root.loaderInfo.parameters.pma3;
var myURL = pmaUser;
ExternalInterface.call("console.log", myURL);
if(pmaURL) {
navigateToURL(new URLRequest(myURL), '_blank');
}
}
ScrollPanel component as3
import fl.containers.ScrollPane;
import fl.controls.ScrollPolicy;
import fl.controls.DataGrid;
import fl.data.DataProvider;
var aSp:ScrollPane = new ScrollPane();
var aBox:MovieClip = new MovieClip();
drawBox(aBox, 0xFF0000);
aSp.source = google;
aSp.setSize(480, 480);
aSp.move(0, 0);
addChild(aSp);
function drawBox(box:MovieClip,color:uint):void {
box.graphics.beginFill(color, 1);
box.graphics.drawRect(0, 0, 480, 480);
box.graphics.endFill();
}import fl.containers.ScrollPane;
function updateScroller() : void
{sourcecontainer.source = google;
sourcecontainer.update();
sourcecontainer.verticalScrollPosition = sourcecontainer.maxVerticalScrollPosition;}
updateScroller();
tween switch text
import fl.transitions.*;
import fl.transitions.easing.*;var myTextFormat:TextFormat = new TextFormat();
myTextFormat.align = TextFormatAlign.LEFT;
txt.s.setTextFormat(myTextFormat);btn1.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver);
btn1.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut);var myTM:TransitionManager = new TransitionManager(txt);
function onMouseOver(event:MouseEvent):void
{
switch (event.currentTarget)
{
case btn1 :
txt.s.text = "NEEMA,\nMiss Africa";
txt.x = 195;
txt.y = 190;
break;}
//TransitionManager.start(my_mc,{type:Fly, direction:Transition.IN, duration:2, easing:Strong.easeOut})
myTM.startTransition({type:Fade, direction:Transition.IN, duration:1, easing:Strong.easeOut});
//var myTween:Tween = new Tween(object, "property", EasingType, begin, end, duration, useSeconds);
var myTween:Tween = new Tween(txt, "y", Strong.easeOut, (txt.y+20), txt.y, 1, true);
txt.visible = true;
}
function onMouseOut(event:MouseEvent):void
{
//TransitionManager.start(my_mc,{type:Fly, direction:Transition.IN, duration:2, easing:Strong.easeOut})
myTM.startTransition({type:Fade, direction:Transition.OUT, duration:1, easing:Strong.easeOut});
//var myTween:Tween = new Tween(object, "property", EasingType, begin, end, duration, useSeconds);
var myTween:Tween = new Tween(txt, "y", Strong.easeOut, (txt.y-20), txt.y, 1, true);
txt.visible = false;
}
counter
import fl.text.TLFTextField;
import flashx.textLayout.formats.TextLayoutFormat;
import flashx.textLayout.elements.TextFlow;
var my_speed:Number = 5;
var my_timer:Timer;
var counter:Number=0;
var _total:Number = 5;
my_timer=new Timer(my_speed*100);
my_timer.addEventListener(TimerEvent.TIMER, increment);
my_timer.start();
function increment(e:TimerEvent):void {
counter++;
//trace(counter);
if (counter==_total) {
counter=0;
}
dec_.text = String(counter);
}
/* ------------- ---------*/
var my_playback_counter:Number=0;
var my_total:Number = 5;
var ar_count:Number;
var myTimer:Timer = new Timer(100 * my_total);
myTimer.addEventListener(TimerEvent.TIMER, decrement);
function decrement (e:TimerEvent):void{
my_playback_counter--;
ar_count = my_playback_counter + my_total;
if (ar_count==0) {
my_playback_counter=0;
}
// trace(ar_count);
inc_.text = String(ar_count);
}
myTimer.start();
Convert objects in array to MovieClip
for (var i:uint = 0; i < buttonArray.length ; i++)
{
var remov = buttonArray[i];
var ins:MovieClip = MovieClip(mc.getChildByName(remov));
ins.gotoAndStop(1);
}
/* detecting objects inside container or movieclip */
for (var i:uint = 0; i < mc.numChildren; i++){
trace (i+'.\t name:' + mc.getChildAt(i).name +
'\t type:' + typeof (mc.getChildAt(i))+
'\t' + mc.getChildAt(i));
}
Flash builder & Away3d setting 3d scene
// ActionScript file
//http://www.flash-3d.net/2010/11/loading-complex-models-with-away3d/
//http://www.mail-archive.com/away3d-dev@googlegroups.com/msg21922.html
//http://gestureworks.com/flash-tutorials/multitouch-away3d-application/
//http://www.brighthub.com/hubfolio/matthew-casperson/blog/archive/2009/08/23/tutorial-index.aspx
//http://www.allforthecode.co.uk/aftc/forum/user/modules/forum/article.php?index=4&subindex=0&aid=278
//http://www.flashmagazine.com/tutorials/detail/away3d_basics_the_cameras/
//http://www.youtube.com/watch?v=oCltyflJdIM
import away3d.arcane;
import away3d.cameras.Camera3D;
import away3d.cameras.HoverCamera3D;
import away3d.containers.*;
import away3d.core.base.*;
import away3d.core.math.*;
import away3d.materials.ColorMaterial;
import away3d.primitives.Cube;
import away3d.primitives.Plane;
import away3d.primitives.Trident;
import flash.display.Sprite;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
import flash.system.System;
import flash.ui.Keyboard;
import mx.core.mx_internal;
import mx.effects.Zoom;
import mx.managers.SystemManager;
private var scene:Scene3D;
//private var camera_c:Camera3D;
private var view:View3D;
private var camera_c:HoverCamera3D;
private var cube:Cube;
private var cPlane:Plane;
private var axis:Trident;
private var toggle:Boolean = false;
private var lastPanAngle:Number;
private var lastTiltAngle:Number;
private var lastMouseX:Number;
private var lastMouseY:Number;
private var moveMouse:Boolean = false;
private var lastKey:uint;
private var keyIsDown:Boolean = false;
private function init():void
{ initEngine();
loadModel();
Rendering();
}
private function initEngine():void
{
camera_c = new HoverCamera3D({z:-500});
//camera_c = new Camera3D({z:-500});
view = new View3D({camera:camera_c});
//view.height = modelcontainer.height;
//view.width = modelcontainer.width;
view.x = modelcontainer.width/2;
view.y = modelcontainer.height/2;
chome.addChild(view);
}
protected function camera_clickHandler(event:MouseEvent = null):void
{ if(toggle){
toggle = false;
msg.text = "disable camera view";
} else {
toggle = true;
msg.text = "enable camera view";
}
}
protected function loadModel():void
{ var material:ColorMaterial = new ColorMaterial(0xff0000);
cube = new Cube(material);
view.scene.addChild(cube);
//axis = new Trident(200, true);
//view.scene.addChild(axis);
cPlane = new Plane({width:500,height:500,bothsides:true,z:0,ownCanvas:true});
cPlane.rotationX = 90;
//cPlane.rotationY = 180;
cPlane.y = -45;
view.scene.addChild(cPlane);
}
protected function Rendering():void
{ chome.addEventListener(MouseEvent.MOUSE_DOWN, MouseDown);
chome.addEventListener(MouseEvent.MOUSE_UP, MouseUp);
chome.addEventListener(Event.ENTER_FRAME, renderScene);
this.stage.addEventListener(KeyboardEvent.KEY_DOWN,keyDown);
this.stage.addEventListener(KeyboardEvent.KEY_UP,keyUp);
}
private function renderScene(event:Event):void
{
if(keyIsDown){
// if the key is still pressed, just keep on moving
switch(lastKey){
case 87 : camera_c.moveUp(10); break;
case 83 : camera_c.moveDown(10); break;
case 65 : camera_c.moveLeft(10); break;
case 68 : camera_c.moveRight(10); break;
case Keyboard.UP : camera_c.moveForward(10); break;
case Keyboard.DOWN : camera_c.moveBackward(10); break;
}
}
var cameraSpeed:Number = 0.3;// Approximately same speed as mouse movement.
if (moveMouse)
{
camera_c.panAngle = cameraSpeed*(stage.mouseX - lastMouseX) + lastPanAngle;
camera_c.tiltAngle = cameraSpeed*(stage.mouseY - lastMouseY) + lastTiltAngle;
}
if(toggle){
cube.rotationY += 2;
camera_c.hover(true);
} else {
camera_c.hover(false);
cube.rotationY = 0;
}
view.render();
}
private function keyDown(e:KeyboardEvent):void
{ lastKey = e.keyCode;
keyIsDown = true;
}
private function keyUp(e:KeyboardEvent):void
{
keyIsDown = false;
}
private function m_out(event:MouseEvent):void
{
camera_c.zoom = stage.stageHeight;
camera_c.focus = stage.stageWidth;
}
private function m_over(event:MouseEvent):void
{
camera_c.zoom = (stage.mouseY/stage.stageHeight) * 4+0.5;
camera_c.focus = (stage.mouseX/stage.stageWidth) * 600;
}
private function MouseDown(event:MouseEvent):void { lastPanAngle = camera_c.panAngle;
lastTiltAngle = camera_c.tiltAngle;
lastMouseX = stage.mouseX;
lastMouseY = stage.mouseY;
moveMouse = true;
}
private function MouseUp(event:MouseEvent):void
{ moveMouse = false;
}
flash builder rss feeds
<?xml version="1.0" encoding="utf-8"?>
<mx:Module xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="100%" height="100%" creationComplete="init()" currentState="beginfeed"
layout="absolute">
<fx:Style source="/module/css/css.css"/>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.events.FlexEvent;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import spark.events.DropDownEvent;
import spark.events.IndexChangeEvent;
// Create a Bindable ArrayCollection to hold the Data Feed
[Bindable]
private var fHolder:ArrayCollection;
[Bindable]
private var rssdetails:String;
private var rssURL:String;
private var yourSelection:String;
protected function init():void
{
feedService.send();
latestService.send();
}
private function rHandler(event:ResultEvent):void
{
fHolder = event.result.rss.channel.item as ArrayCollection;
rssdetails = event.result.rss.channel.item[0].encoded;
}
private function fHandler(event:FaultEvent):void
{
Alert.show(event.message.toString(),"Error");
}
protected function latestService_resultHandler(event:ResultEvent):void
{
fHolder = event.result.rss.channel.item as ArrayCollection;
rssdetails = event.result.rss.channel.item[0].encoded;
}
protected function rss_clickHandler():void
{
read_story.visible=true;
if(currentState=="rssfeed")
{
rssdetails= rss.selectedItem.description;
}
if(currentState=="beginfeed")
{
rssdetails= rss.selectedItem.encoded;
}
}
protected function getCombofeed_resultHandler(event:ResultEvent):void
{
fHolder = event.result.rss.channel.item as ArrayCollection;
if(currentState=="rssfeed")
{
rssdetails = event.result.rss.channel.item[0].description;
}
if(currentState=="beginfeed")
{
rssdetails = event.result.rss.channel.item[0].encoded;
}
}
protected function rss_selected_closeHandler(event:DropDownEvent):void
{
getCombofeed.send();
yourSelection = rss_selected.selectedItem.label;
if(yourSelection=="blogspot" || yourSelection=="actionscripting")
{
currentState="rssfeed" ;
}
if(yourSelection=="wordpress" || yourSelection=="charag")
{
currentState="beginfeed" ;
}
}
]]>
</fx:Script>
<mx:states>
<s:State name="beginfeed"/>
<s:State name="rssfeed"/>
</mx:states>
<fx:Declarations>
<mx:HTTPService id="feedService" url="http://feeds.feedburner.com/charag/rss" result="rHandler(event)" showBusyCursor="true" />
<mx:HTTPService id="getCombofeed" url="{rss_selected.selectedItem.data}" showBusyCursor="true" result="getCombofeed_resultHandler(event)" />
<mx:HTTPService id="latestService" url="{yourRss.text}" result="latestService_resultHandler(event)" showBusyCursor="true" />
</fx:Declarations>
<s:BorderContainer x="0" y="0" width="750" height="500" backgroundAlpha="0" borderVisible="false"
backgroundAlpha.rssfeed="0.0" backgroundColor.rssfeed="#FF8E8E">
<!-- backgroundColor="#ffc175" -->
<s:DataGrid id="rss" x="7" y="150" width="230" height="288" chromeColor="#ECECEC"
click="rss_clickHandler()" dataProvider="{fHolder}" requestedRowCount="4">
<s:columns>
<s:ArrayList>
<s:GridColumn dataField="title" headerText="Latest Stories"></s:GridColumn>
</s:ArrayList>
</s:columns>
</s:DataGrid>
<mx:TextArea id="contentRss" x="245" y="123" width="500" height="330" borderVisible="false"
contentBackgroundAlpha="0.0" htmlText="{rssdetails}"/>
<s:Button id="read_story" visible="false" x="25" y="450" label="read full story"
chromeColor="#CCCCCC" click="navigateToURL(new URLRequest(rss.selectedItem.link));"
enabled="{rss.selectedItem!=null}" />
<s:Image x="148" y="80" source="assets/Rss-Feed.png"/>
<s:ComboBox id="rss_selected" x="10" y="119" width="131" borderVisible="false"
close="rss_selected_closeHandler(event)"
contentBackgroundAlpha="1.0" dropShadowVisible="false">
<s:ArrayList>
<fx:Object label="charag" data="http://feeds.feedburner.com/charag/rss" />
<fx:Object label="blogspot" data="http://feeds.feedburner.com/asimkh"/>
<fx:Object label="actionscripting" data="http://feeds.feedburner.com/Flash-Adobe"/>
<fx:Object label="wordpress" data="http://feeds.feedburner.com/Charag"/>
</s:ArrayList>
</s:ComboBox>
<s:TextInput id="yourRss" x="261" y="94" width="274" borderAlpha="0.2"
borderVisible="true"/>
<s:Button id="rss_check" x="543" y="94" label="get rsss" click="latestService.send()"
label.rssfeed="get rss"/>
</s:BorderContainer>
</mx:Module>
radio button text font
import fl.controls.RadioButtonGroup;
import fl.controls.Label;
var myFont:Font = new Stylo();
var myTextFormat:TextFormat = new TextFormat();
myTextFormat.font = myFont.fontName;
myTextFormat.size = 16;
myTextFormat.color = 0xFFCC00;;
btnYes.setStyle("embedFonts", true);
btnYes.setStyle("textFormat", myTextFormat);
btnNo.setStyle("embedFonts", true);
btnNo.setStyle("textFormat", myTextFormat);
//answer.visible=false;
btnYes.addEventListener(MouseEvent.CLICK, select_option);
btnNo.addEventListener(MouseEvent.CLICK, select_option);
var option:String;
function select_option(e:MouseEvent):void
{
switch (e.currentTarget)
{
case btnYes:
option = "Yes";
break;
case btnNo:
option = "No";
break;
}
//answer.visible=true;
//trace(option);
answer.myanswer.text = option;
MovieClip(root).play();
}
flash video player
import fl.video.*;
var myVideo:FLVPlayback = new FLVPlayback();
myVideo.width = 720;
myVideo.height = 480;
myVideo.source = "video.flv";
myVideo.skin = "SkinOverAll.swf";
myVideo.skinBackgroundColor = 0x000000;
myVideo.skinBackgroundAlpha = 0.3;
myVideo.skinAutoHide = true;
myVideo.addEventListener(VideoEvent.COMPLETE, completePlay);
function completePlay(e:VideoEvent):void {
myVideo.play();
}
addChild(myVideo);
youtube player
var so = new SWFObject('player.swf','ply','480','270','9','#');
so.addParam('allowfullscreen','true');
so.addParam('allowscriptaccess','always');
so.addVariable('playlistfile','http://gdata.youtube.com/feeds/api/playlists/4705506A8FAF8B01?v=2');
so.addVariable('playlistsize', '150');
so.addVariable('playlist','right');
so.addVariable('repeat','always');
so.addVariable('shuffle','true');
so.write('mediaspace');
