# Preloader + stage resize + hid area

**URL:** <https://forum.kirupa.com/t/preloader-stage-resize-hid-area/313331>\
**Category:** Uncategorized\
**Created:** [August 26, 2010, 9:56am UTC](https://forum.kirupa.com/t/preloader-stage-resize-hid-area/313331 "2010-08-26T09:56:04Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![simonetta](https://avatars.discourse-cdn.com/v4/letter/s/d9b06d/32.png) [@simonetta](https://forum.kirupa.com/u/simonetta)\
**Post date:** [August 26, 2010, 9:56am UTC](https://forum.kirupa.com/t/preloader-stage-resize-hid-area/313331/1 "2010-08-26T09:56:04Z")

</div>

i insert a preloader in a timeline of the fla , and move the movieclip for the stage resize and hid area menu in the second frame

but i have the error #rror #1009: Impossibile accedere a una proprietà o a un metodo di un riferimento oggetto null.  
at Mainstage/init()  
at Mainstage()

this my my class  
someone can help me?  
thanks

package  
{  
import flash.display.MovieClip;  
import flash.display.Sprite;  
import flash.events.MouseEvent;  
import flash.text.TextField;  
import flash.events.Event;

public class Mainstage extends MovieClip  
{  
private var arriveY:int;  
public function Mainstage()  
{

addEventListener(Event.ADDED\_TO\_STAGE,init);

checkResize();  
}

private function init(evt:Event):void {  
removeEventListener(Event.ADDED\_TO\_STAGE,init);

stage.frameRate=31;

bg\_mc.x=0;  
bg\_mc.y=0;  
bg\_mc.width=stage.stageWidth;  
bg\_mc.height=stage.stageHeight;

clip\_mc.x=stage.stageWidth/2;  
clip\_mc.y=stage.stageHeight/2;

rights\_txt.x=stage.stageWidth-rights\_txt.textWidth;  
rights\_txt.y=stage.stageHeight-rights\_txt.textHeight;  
menu\_mc.hitArea=hit\_area\_mc;  
hit\_area\_mc.mouseEnabled=false;

menu\_mc.addEventListener(MouseEvent.MOUSE\_OVER,set Over);  
menu\_mc.addEventListener(MouseEvent.MOUSE\_OUT,setO ut);  
}  
private function closeMenu(e:Event):void  
{  
var dy:Number=arriveY-e.currentTarget.y;  
var ay:Number=dy\*.2;  
e.currentTarget.y+=ay;  
if(Math.abs(dy)\<=.2)  
e.currentTarget.removeEventListener(Event.ENTER\_FR AME,closeMenu);  
}  
private function openMenu(e:Event):void  
{  
var dy:Number=arriveY-e.currentTarget.y;  
var ay:Number=dy\*.2;  
e.currentTarget.y+=ay;  
if(Math.abs(dy)\<=.2)  
e.currentTarget.removeEventListener(Event.ENTER\_FR AME,openMenu);  
}

private function setOut(m:MouseEvent):void  
{  
arriveY=10;  
m.currentTarget.removeEventListener(Event.ENTER\_FR AME,openMenu);  
m.currentTarget.addEventListener(Event.ENTER\_FRAME ,closeMenu);  
}

private function setOver(m:MouseEvent):void  
{  
arriveY=98;  
m.currentTarget.removeEventListener(Event.ENTER\_FR AME,closeMenu);  
m.currentTarget.addEventListener(Event.ENTER\_FRAME ,openMenu);  
}

private function checkResize():void  
{  
stage.addEventListener(Event.RESIZE, resizeStage);  
}

private function resizeStage(event:Event):void  
{  
init();  
}  
}  
}

* * *

this the code in the firs frame

stop();  
addEventListener(Event.ENTER\_FRAME, loading);  
function loading(event:Event) {  
var bytestotal = stage.loaderInfo.bytesTotal;  
var bytesloaded = stage.loaderInfo.bytesLoaded;  
var sclbar = Math.round(bytesloaded\*100/bytestotal);  
custom\_animation.gotoAndPlay(sclbar);  
if (bytesloaded \>= bytestotal) {  
removeEventListener(Event.ENTER\_FRAME, loading);  
removeChild(custom\_animation);  
gotoAndStop(2);  
}  
}
