Då du har en hierarki av movieclips som troligen inte är positionerade på x=0 och y=0 så får du använda dig av hårdkodade värden i detta fall.
Tex
this._x = -100;
4 svar · 550 visningar · startad av saturday
Kortfattat, jag har ett movieclip som ligger innanför några movieclip. På detta movieclip har jag följande kod:
--
onClipEvent(enterFrame){
// Tar ut nollpunkten för y och x
this._x = _root._x
this._y = _root._y
// Gör movieclipet till fullscreen
this._width = Stage.width
this._height = Stage.height
}
--
"this._width = Stage.width" och "this._height = Stage.height" ser ut att fungera perfekt men "this._x = _root._x" och "this._y = _root._y" fungerar inte. Vad som händer är att den hämtar ändå ut nollpunkten i movieclipet jag befinner mig i och inte nollpunkten från _root. Det verkar alltså som att scriptet inte går ned till _root fast att jag adresserar dit. Vad är det som inte stämmer? Hur lyckas jag hämta ut nollpunkten från _root? Se bifogad bild för att se hur det blir just nu. Det är alltså den mörkade ytan som är detta movieclip,
Ps. Om jag lyfter ned movieclipet till _root och kör med...
onClipEvent(enterFrame){
// Tar ut nollpunkten för y och x
this._x = _x
this._y = _y
// Gör movieclipet till fullscreen
this._width = Stage.width
this._height = Stage.height
}
... så fungerar det som jag vill. Men nu ska inte movieclipet ligga direkt under _root...
Då du har en hierarki av movieclips som troligen inte är positionerade på x=0 och y=0 så får du använda dig av hårdkodade värden i detta fall.
Tex
this._x = -100;
Jag förstår nog inte vad du menar riktigt, jag vill ju inte ta ut nollpunkten från ett movieclip utan från _root, och den är väl alltid densamma?. Ditt alternativ fungerar ej då jag kör fullscreen och allt innehåll centreras. Jag kan inte sätta "this._x = -100;" då innehållet centreras då du förändrar storleken på webbläsaren, så "this._x" måste vara relativ till nollpunkten av _root.
Det måste väl finnas ett fungerande sätt att hämta ut nollpunkten från roten via?
Ps. Jag prövade med "this._x = Stage.width - Stage.width", men det resulterade i samma fel.
_root._x och _root._y är 0 per default och därför så placerar den sig på förälderns 0-punkt.
För att hitta var i ett filmklipp som en punkt på _root finns i ett filmklipp så använd metoden globalToLocal().
// Placera filmklippet på position (0, 0) på _root
var point = {x:0, y:0}
_parent.globalToLocal(point)
this._x = point.x;
this._y = point.y
Slå upp MovieClip.globalToLocal() i Actionscript referensen för mer information.
/Mirandir
Perfekt. Tack för hjälpen!