hola de nuevo
necesito poner un botón con su correspondiente enlace en una imagen de un menu acordeon vertical,
el codigo del boto creo que es este:
</mx:HBox>
<mx:Label bottom="0"
width="100%"
textAlign="center"
text="DECORACION"
color="0xffffff"
click="onClick()"
mouseChildren="false"
useHandCursor="true"
buttonMode="true"/>
</mx:Application>
el codigo del enlace creo que es este:
<mx:Script>
<![CDATA[
import flash.net.navigateToURL;
private function onClick():void
{
navigateToURL(new URLRequest("http://www.miweb.com/blog"), "_blank");
}
]]>
</mx:Script>
EL problema lo tengo a la hora de meterlo en el Actionscript que crea las distintas secciones del menu de imagenes tipo acordeon vertical, el codigo del archivo Load File donde quiero poner los botones es este:
package jel.com.ui
{
import flash.display.Bitmap;
import flash.display.GradientType;
import flash.display.InterpolationMethod;
import flash.display.Loader;
import flash.display.LoaderInfo;
import flash.display.Shape;
import flash.display.SpreadMethod;
import flash.display.Sprite;
import flash.events.Event;
import flash.events.ProgressEvent;
import flash.geom.Matrix;
import flash.net.URLRequest;
import flash.text.AntiAliasType;
import flash.text.TextField;
import flash.text.TextFieldAutoSize;
import flash.text.TextFormat;
public class LoadFile extends Sprite
{
private var _width:Number;
private var _height:Number;
private var textStyle:TextFormat;
private var titulo:String;
private var delta:Number;
public function LoadFile(url:String, titulo:String, textStyle:TextFormat, delta:Number) {
this.textStyle = textStyle;
this.titulo = titulo;
this.delta = delta;
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Progress Event.PROGRESS, onProgressListener, false, 0, true);
loader.contentLoaderInfo.addEventListener(Event.CO MPLETE, onCompleteListener, false, 0, true);
loader.load(new URLRequest(getUrl(url)));
}
private function onProgressListener(evt:ProgressEvent):void {
//var ratio:Number = evt.bytesLoaded/evt.bytesTotal;
}
private function onCompleteListener(evt:Event):void {
var bmp:Bitmap = Bitmap(evt.target.content);
bmp.smoothing = true;
addChild(bmp);
var w:Number = bmp.width;
var h:Number = bmp.height;
var matrizDegradado:Matrix = new Matrix();
matrizDegradado.createGradientBox(delta, h, 0.0*Math.PI, 0, 0);
var banda:Number = 0.08;
var rect:Shape = new Shape();
rect.graphics.beginFill(0xffffff, .70);
rect.graphics.drawRect(0,0,banda*delta, h);
addChild(rect);
var area:Shape = new Shape();
area.graphics.beginGradientFill(GradientType.LINEA R, [0x000000, 0x000000, 0x000000], [.4, .4, 0.0], [0, 64, 255], matrizDegradado, SpreadMethod.PAD, InterpolationMethod.RGB);
area.graphics.drawRect(banda*delta, 0, (1-banda)*delta, h);
addChild(area);
var campoTexto:TextField = new TextField();
with (campoTexto) {
autoSize = TextFieldAutoSize.LEFT;
x = 0.3*(delta- textStyle.size);
y = h-x;
selectable = false;
embedFonts = true;
antiAliasType = AntiAliasType.ADVANCED;
rotation = -90;
text = titulo;
setTextFormat(textStyle);
}
addChild(campoTexto);
//this.mouseChildren = false;
var spotArea:Sprite = new Sprite();
spotArea.graphics.beginFill(0xffffff, 0.0);
spotArea.graphics.drawRect(0,0,w, h);
addChild(spotArea);
buttonMode = true;
cacheAsBitmap = true;
evt.target.loader.contentLoaderInfo.removeEventLis tener(ProgressEvent.PROGRESS, onProgressListener);
evt.target.loader.contentLoaderInfo.removeEventLis tener(Event.COMPLETE, onCompleteListener);
}
private function getUrl(url:String):String {
if (!(url.indexOf(":") > -1 || url.indexOf("/") == 0 || url.indexOf("\\") == 0)) {
var rootURL:String;
if (root) {
rootURL = root.loaderInfo.url;
if (rootURL) {
var lastIndex: int= Math.max(rootURL.lastIndexOf("\\"), rootURL.lastIndexOf("/"));
if (lastIndex != -1) {
url = rootURL.substr(0, lastIndex + 1) + url;
}
}
}
}
return url;
}
}
}
Alguien sabe donde lo tengo que poner?
gracias a todos