Slider

Mit diesem Slider lässt sich der Movieclip content_mc verkleinern.

Auf der Bühne liegt ein MC slider_mc

darin liegt ein Button button_mc

Die Linie im Slider ist 500 Pixel breit. Diese Breite wird in der Variablen barWidth hinterlegt.
Man gibt einen Mindeswert min und Maximalwert max ein.
In der Funktion slide wird der conten_mc anhand der Position von button_mc skaliert.

Man muss darauf achten, dass die Größe des content_mc der Startposition von this.slider_mc.button_mc entspricht. Man kann den Button im Slider verschieben und man kann die Größe des content_mc im Transformieren Fenster prozentual festlegen.

Faktor, minimal maximal

fkt entspricht der Buttonposition dividiert durch die Gesamtstrecke barWidth. Das ergibt einen Wert von 0 bis 1. Zum Beispiel bei der höchsten Position 500 / 500 ergibt 1. Mittlere Position 250/500 ergibt ein Halb, oder 0.5.

min ist der Minimalwert, max ist der Maximalwert.
Wenn der Button auf 0 liegt, wird der min Wert hinzuaddiert, denn das ist die Startposition. Damit bei der höchsten Position nicht der Maximalwert plus der Min Wert ermittelt wird, muss min von max subtrahiert werden. range = max - min;
scaleValue = range * fkt + min ;

var barWidth = 500; //Breite des Balkens
var min = 0.1;
var max = 2;

this.slider_mc.slider_btn.addEventListener("pressmove", dragMe.bind(this));

function dragMe(evt) {
	var evTg = evt.currentTarget;
	var p = this.slider_mc.globalToLocal(evt.stageX, evt.stageY);
	evTg.x = p.x;
	if (evTg.x < 0) {
		evTg.x = 0;
	} else if (evTg.x > barWidth) {
		evTg.x = barWidth;
	}
	var fkt = evTg.x / barWidth //Faktor zwischen 0 und 1
	var range = max - min;
	var scaleValue = (range * fkt) + min;
	this.anzeige.text = Math.floor(scaleValue* 100) / 100;
	this.content_mc.scaleX = this.content_mc.scaleY = scaleValue;
}
    
zurück zu den Tipps