Diesen Tipp in Originalversion zeigen.
Registrierungspunkt dynamisch ändern
Leider gibt es keine vordefinierte Methode in Flash, womit man den Registrierungspunkt dynamisch ändern kann. Auf Umwegen klappt es jedoch.
mcA ist das Mc, welches mcB enthält.
Der folgende Code kommt auf die Hauptzeitleiste (bzw. der Zeitleiste, in der sich mcA befindet):
/* Beschreibung: Mc a enthaelt das Mc b, welches onPress an der Stelle vergrößert wird, an der gedrueckt wird. */
_global.tl = this; // Referenz zu _root in einer globalen Variable speichern
mcA.onPress = function()
{
// X- und Y-Abstand von dem Punkt, auf dem gedrueckt wird und der aktuellen
Position von mcA
var disX = _global.tl._xmouse - this._x;
var disY = _global.tl._ymouse - this._y;
// Auesseres Mc (mcA) an die Position der Maus verschieben
this._x = _global.tl._xmouse;
this._y = _global.tl._ymouse;
// Inneres Mc (mcB) entgegengesetzt bewegen, damit die Position auf der Bühne
unveraendert bleibt.
this.mcB._x -= disX;
this.mcB._y -= disY;
// Vergroessern
this._xscale = this._yscale = 300;
};
mcA.onRelease = function()
{
// Auf Normalgroesse verkleinern
this._xscale = this._yscale = 100;
};
Autor: P. Nazari ()
Copyright (c) 2002-2005 by Andreas Schroth
URL: www.computer-tipps.net/webdesign159.html