new MovieClip ohne Skalierung [Flash 10]
| Beiträge: 31 Registriert: Jan 2011
| 03.04.2011, 12:47
Hallo,
ich bin mal wieder kurz vorm Zusammenbruch :-(
folgendes:
Ich lade und rufe im neuen MovieClip externe swf`s wie folgt auf:
PHP:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
|
import flash.display.MovieClip;
import flash.events.Event;
//
var btnArray:Array =[gelb_btn,gruen_btn, rot_btn, blau_btn];
var kartenArray:Array =["gelb.swf","gruen.swf", "rot.swf", "blau.swf"];
//
var holderMc:MovieClip = new MovieClip();
holderMc.x = holderMc.y = 50;
addChild(holderMc);
//
var tweenControlMC:MovieClip = new MovieClip();
var memoContainer:MovieClip;
var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener (Event.COMPLETE, completeHandler);
//
for(var i:uint =0; i<btnArray.length; i++){
btnArray[i].arrayID = i;
btnArray[i].buttonMode = true;
btnArray[i].addEventListener (MouseEvent.CLICK, karteRufen);
}
//
function karteRufen (e:MouseEvent):void {
karteLaden (kartenArray[e.currentTarget.arrayID]);
}
//
function karteLaden (link:String):void {
loader.load (new URLRequest(link));
}
//
function completeHandler (e:Event):void {
var mc:MovieClip = e.target.content as MovieClip;
holderMc.addChildAt (mc,0);
tweenControl (mc);
}
//
karteLaden ("deckblatt.swf");
//
function tweenControl (mc):void {
tweenControlMC.addEventListener (Event.ENTER_FRAME, oEF);
function oEF (e:Event):void {
if(mc.currentFrame >= 40){
holderMc.setChildIndex(MovieClip(mc), holderMc.numChildren-1);
}
if(mc.currentFrame >= mc.totalFrames){
tweenControlMC.removeEventListener (Event.ENTER_FRAME, oEF);
if(memoContainer != null){
holderMc.removeChild(memoContainer);
}
memoContainer = mc;
}
}
}
|
wunderbar! danke nochmals an RustyCake!!
Das Problem:
Ich möchte das die Darstellung der aufgerufenen swf`s nicht skaliert.
Ich hab stundenlang gegoogelt und auch hier im Forum ordentlich durchgewühlt, was mir nach einer Lösung erscheint ist folgendes script:
PHP:1 2 3 4 5 6 7 8 9 10 11 12 13
|
import flash.events.Event;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
function resizeListener(e:Event) :void
{
holderMc.x = e.target.stageWidth / 2- holderMc.width / 2;
holderMc.y = e.target.stageHeight / 2 - holderMc.height / 2;
}
stage.addEventListener(Event.RESIZE, resizeListener);
|
... aber wie binde ich dies in das obige AS ein??
Kann mir jemand da einen Rat geben? | | | Beiträge: 1776 Wohnort: Laimbach 6 1/2 Registriert: Nov 2002
| 03.04.2011, 13:04
|
|