ciao, ho un listener
codice:
private function lascia(m:MouseEvent):void
{
m.currentTarget.stopDrag();
m.currentTarget.addEventListener(Event.ENTER_FRAME, controllaContatto);
createPieces3();
con questa funzione:
codice:
private function controllaContatto(e:Event):void
{
var i:int = pieces_container_mc.numChildren;
while (i--){
if(e.currentTarget.hitTestObject(pieces_container_mc.getChildAt(i))){
break;
}
}
ogni clip che sposto per effettuare l'hittest con l'altra clip ha un campo di testo con una stringa e cioè dovrei recuperare quella stringa memorizzata nel campo di testo dentro questa clip:
e.currentTarget.hitTestObject
ma se faccio e.currentTarget.text mi da +
TypeError: Error #2007: Il valore del parametro text deve essere diverso da null.
at flash.text::TextField/set text()
at Main/controllaContatto()
sono tutte clip generate dinamicamente e questa è la funzione che mi genera il campo di testo
codice:
private function getPiece3(n:int):MovieClip
{
var clip_mc:MovieClip=new MovieClip();
clip_mc.mouseChildren=false;
clip_mc.graphics.beginFill(fillColor[n],1);
clip_mc.graphics.lineStyle(1,0x333333,1);
//clip_mc.graphics.drawRect(0,0,16,16);
clip_mc.graphics.drawRoundRect(0,0,16,16,5);
var field_txt:TextField=new TextField();
field_txt.selectable=false;
field_txt.autoSize=TextFieldAutoSize.LEFT;
field_txt.alpha=.3;
field_txt.defaultTextFormat=getFormat();
field_txt.text=(n+1).toString();
field_txt.width=field_txt.textWidth;
field_txt.height=field_txt.textHeight;
field_txt.x=clip_mc.width/2-field_txt.width/2;
field_txt.y=clip_mc.height/2-field_txt.height/2;
clip_mc.addChild(field_txt);
//clip_mc.addEventListener(MouseEvent.CLICK, onClick);
clip_mc.addEventListener(MouseEvent.MOUSE_DOWN,trascina);
clip_mc.addEventListener(MouseEvent.MOUSE_UP,lascia);
if(n==points_array.length-1)
{
clip_mc.alpha=0;
clip_mc.name="empty_mc";
}
return(clip_mc);
}
se faccio così:
codice:
var ii:int = pieces_container_mc2.numChildren;
while (i--){
//win_txt.text=ii.toString();
win_txt.text=pieces_container_mc2.getChildAt(ii).field_txt.text;
pieces_container_mc.getChildAt(ii)=new MovieClip();
break;
}
mi da
1119: Access of possibly undefined property field_txt through a reference with static type flash.display
isplayObject.
come faccio a recupera re il campo di testo dentro
ieces_container_mc2.getChildAt(ii) o e.currentTarget.
???
vi rigrazio dell'aiuto!